diff --git a/locale/ar/LC_MESSAGES/django.po b/locale/ar/LC_MESSAGES/django.po index 0567b196b4..812d84f224 100644 --- a/locale/ar/LC_MESSAGES/django.po +++ b/locale/ar/LC_MESSAGES/django.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: RanaJT, 2023\n" "Language-Team: Arabic (http://app.transifex.com/zulip/zulip/language/ar/)\n" @@ -22,46 +22,47 @@ msgstr "" "Language: ar\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "غير مسموح للمستعملين الزائرين" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "منظمة غير صالحة" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "تيارات عامة" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "تيارات خاصة" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "الرسائل المباشرة " -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "اسم مخطط غير معروف: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "وقت البدء متأخر عن وقت الانتهاء. البدء: {start}, الانتهاء: {end} " -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "No analytics data available. Please contact your server administrator." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "إعدادات غير صالحة" @@ -122,29 +123,31 @@ msgid "" msgstr "لا تمتلك منظمتك ما يكفي من التراخيص الخاصة بـ\"زوليب\" غير المستخدمة لدعوة {num_invites} مستخدمين." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "يجب عليك إعداد فاتورة لما لا يقل عن {} مستخدمين." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Invoices with more than {} licenses can't be processed from this page. To complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "هناك خطأ ما. الرجاء التواصل {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "هناك خطأ ما. الرجاء إعادة تحميل الصفحة." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "هناك خطأ ما. الرجاء الإنتظار لبضع دقائق و إعادة المحاولة." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -176,7 +179,7 @@ msgstr "غير قادر على تحديث الخطة. انتهت صلاحية ا msgid "Unable to update the plan. The plan has ended." msgstr "غير قادر على تحديث الخطة. انتهت الخطة." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -192,14 +195,14 @@ msgstr "خطتك موجودة بالفعل على تراخيص {licenses} في msgid "You cannot decrease the licenses in the current billing period." msgstr "لا يمكنك تقليل التراخيص في فترة الفوترة الحالية." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "تمت جدولة خطتك بالفعل للتجديد مع تراخيص {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "لا شيء لتغييره." @@ -211,7 +214,7 @@ msgstr "لا يوجد زبون لهذه المنظمة!" msgid "Session not found" msgstr "الجلسة غير موجودة" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "يجب أن يكون مسؤول الفوترة أو مالك منظمة" @@ -261,7 +264,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "خطأ في الخادم الداخلي" @@ -563,9 +566,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -583,9 +586,9 @@ msgstr "عرض السعر" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "إستضافة ذاتية لـ\"زوليب\"" @@ -595,9 +598,9 @@ msgstr "إستضافة ذاتية لـ\"زوليب\"" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "طلب رعاية" @@ -860,51 +863,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "سجل عن طريق %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "شكرا لتسجيلك!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "لا يزال لديك بريد إلكتروني؟ نستطيع اعد ارسالها" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "من باب الاحتياط، ألق نظرة على مجلد البريد غير الهام الخاص بك." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "غير قادر على الاتصال بـ\"زوليب\"." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "قد تتأخر التحديثات." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "إعادة المحاولة قريبًا ..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "جرب الآن." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "رسائل" @@ -1152,6 +1155,159 @@ msgstr "المستخدمون العاديون" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "مرحبًا بك في Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "عنوان URL للمنظمة: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "استخدم حساب LDAP الخاص بك لتسجيل الدخول" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s على Zulip: تفاصيل منظمتك الجديدة" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s على Zulip: تفاصيل حسابك الجديد" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "لقد انضممت إلى منظمة Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1159,6 +1315,39 @@ msgstr "" msgid "Hi," msgstr "مرحبا،" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "إذا لم تطلب هذا التغيير ، يرجى الاتصال بنا على الفور على %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "إذا لم تطلب هذا التغيير ، يرجى الاتصال بنا على الفور على <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1172,23 +1361,10 @@ msgstr "تلقينا طلبًا لتغيير عنوان البريد الإلك msgid "Confirm email change" msgstr "تأكيد تغيير البريد الإلكتروني" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "إذا لم تطلب هذا التغيير ، يرجى الاتصال بنا على الفور على %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "تحقق من عنوان بريدك الإلكتروني الجديد" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "إذا لم تطلب هذا التغيير ، يرجى الاتصال بنا على الفور على <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1242,17 +1418,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1357,225 +1522,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "يحتوي عنوان بريدك الإلكتروني %(email)s على حسابات مع منظمات \"زوليب\" التالية التي تستضيفها %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "مرحبًا بك في Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "عنوان URL للمنظمة: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "استخدم حساب LDAP الخاص بك لتسجيل الدخول" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s على Zulip: تفاصيل منظمتك الجديدة" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s على Zulip: تفاصيل حسابك الجديد" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "لقد انضممت إلى منظمة Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "أمثلة من المواضيع القصيرة" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "اذهب إلى \"زوليب\"" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1660,14 +1606,14 @@ msgstr "تنتهي هذه الدعوة في غضون يومين. إذا انته #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1699,21 +1645,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1721,21 +1691,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1778,29 +1748,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nلا يتضمن هذا البريد الإلكتروني محتوى الرسائل لأنك عطلت محتوى الرسائل الذي يظهر في إشعارات البريد الإلكتروني.\nانظر %(alert_notif_url)s للمزيد من التفاصيل.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "الرد في %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nلا تقم بالرد على هذا البريد. خادم \"زوليب\" هذا غير مهيء لقبول\nرسائل البريد الإلكتروني القادمة. مساعدة:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "إدارة تفضيلات البريد الإلكتروني:" @@ -1963,6 +1933,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1991,6 +1969,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "أمثلة من المواضيع القصيرة" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "اذهب إلى \"زوليب\"" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2379,7 +2429,7 @@ msgid "Incoming webhooks" msgstr "واردات الويب هوك" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "روبوتات تفاعلية" @@ -2879,292 +2929,295 @@ msgid "" " " msgstr "\n بإمكانك أيضاً أن تستخدم تطبيق \"زوليب\" لسطح المكتب .\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "الاشتراكات" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "اشترك {user} للتو في \"زوليب\". (الإجمالي: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "تم قبول دعوتك من قبل {user} للانضمام إلى \"زوليب\"!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "تعيين أمر غير صالح." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "حقل الـ ID {id} غير موجود." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "اسم مجموعة الغرفة الافتراضي غير صالح '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "اسم مجموعة الغرفة الافتراضي طويل جدًا (الحد: {} من الأحرف)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "يحتوي اسم مجموعة الغرفة الافتراضي '{}' على أحرف فارغة (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "مجموعة الغرفة الافتراضية غير صالحة {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' هي غرفة افتراضية ولا يمكن إضافتها إلى '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "مجموعة الغرفة الافتراضية '{group_name}' موجودة بالفعل" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "الغرفة '{stream_name}' موجودة بالفعل في مجموعة الغرفة الافتراضية '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "الغرفة '{stream_name}' غير موجودة في مجموعة الغرفة الافتراضية '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "مجموعة الغرفة الافتراضية هذه تم تسميتها بالفعل '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "مجموعة الغرفة الافتراضية '{}' موجودة بالفعل" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "لحماية المستخدمين، يحد \"زوليب\" من عدد الدعوات التي يمكنك إرسالها في يوم واحد. نظرًا لأنك وصلت إلى الحد الأقصى، لم يتم إرسال دعوات." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "حسابك جديد جدًا بحيث لا يمكن إرسال دعوات لهذه المنظمة. اسأل مسؤول المنظمة، أو مستخدم أكثر خبرة." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "لم يتم التحقق من صحة بعض رسائل البريد الإلكتروني، لذلك لم نرسل أي دعوات." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "لم نتمكن من دعوة أي شخص." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "بعض هذه العناوين تستخدم \"زوليب\" بالفعل، لذلك لم نرسل لهم دعوة. لقد أرسلنا دعوات إلى أي شخص آخر!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "لا شيء لتغييره" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "propagate_mode غير صالح بدون تعديل الموضوع" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "لا يمكن تغيير محتوى الرسالة أثناء تغيير الغرفة" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "لا يمكن تعديل الأدوات." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "قام {user} بوضع علامة تم الحل على هذا الموضوع." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "قام {user} بوضع علامة على هذا الموضوع على أنه لم يتم حله." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "تم نقل هذا الموضوع إلى {new_location} بواسطة {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "رسالة نُقلت من هذا الموضوع إلى {new_location} بواسطة {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} تم نقل رسائل من هذا الموضوع إلى {new_location} بواسطة {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "تم نقل هذا الموضوع هنا من {old_location} بواسطة {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} تم نقل رسائل هنا من {old_location} بواسطة {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "لقد أوقفت منظمتك تعديل الرسائل" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "ليس لديك إذن لتعديل هذه الرسالة" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "انقضت المهلة الزمنية لتعديل هذه الرسالة" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "ليس لديك إذن لاستخدام إشارات أحرف البدل في هذه الغرفة." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "ليس لديك إذن بنقل هذه الرسالة" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "ليس لديك إذن بنقل هذه الرسالة بسبب فقد الوصول إلى الغرفة الخاصة بها" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "علامة غير صالحة: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "علامة غير قابلة للتعديل: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "عملية وضع علامة على رسالة غير صالحة: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "الرسالة(الرسائل) غير صالحة" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "تعذر تقديم الرسالة" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "مُتوقع غرفة واحدة بالضبط" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "نوع البيانات غير صالح للغرفة" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "نوع البيانات غير صالح للمستلمين" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "قد تحتوي قوائم المستلمين على رسائل بريد إلكتروني أو معرفات ID للمستخدم، ولكن ليس كليهما." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "حاول الروبوت الخاص بك {bot_identity} إرسال رسالة إلى الغرفة ذات الـ ID {stream_id} ، ولكن لا يوجد غرفة بهذا الـ ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "حاول الروبوت الخاص بك {bot_identity} إرسال رسالة إلى الغرفة {stream_name}، لكن هذه الغرفة غير موجودة. انقر [هنا]({new_stream_link}) لإنشائها." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "حاول الروبوت الخاص بك {bot_identity} إرسال رسالة إلى الغرفة {stream_name}. الغرفة موجودة ولكن ليس فيها أي مشتركين." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "مواضيع مطلوبة في هذه المنظمة" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "الأدوات: أرسل مبرمج الـ API محتوى JSON غير صالح" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "الأدوات: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "التفاعل موجود بالفعل." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "يوجد بالفعل رمز تعبيري مخصص بهذا الاسم." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3178,8 +3231,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3198,18 +3251,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} غيّر [أذونات الوصول](/help/stream-permissions) لهذه الغرفة من **{old_policy}** إلى **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3218,38 +3285,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} غيّر [posting permissions](/help/stream-sending-policy) لهذه الغرفة:\n\n* **Old permissions**: {old_policy}.\n* **New permissions**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} أعاد تسمية الغرفة {old_stream_name} إلى {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "بدون وصف." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "قام {user} بتغيير وصف هذه الغرفة." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "الوصف القديم" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "الوصف الجديد" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "أبديًا" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "سيتم الآن الاحتفاظ بالرسائل في هذه الغرفة إلى الأبد." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3259,56 +3326,59 @@ msgid "" "{summary_line}" msgstr "{user} غيّر [فترة الاحتفاظ بالرسائل](/help/message-retention-policy) لهذه الغرفة:\n * **فترة الاحتفاظ القديمة**: {old_retention_period}\n* **فترة الاحتفاظ الجديدة**: {new_retention_period} {summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "لا يمكنك إرفاق رسالة فرعية بهذه الرسالة." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID المستخدم غير صالح {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "مجموعة المستخدمين '{}' موجودة بالفعل." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "الـ API هذا غير صالح لروبوتات الويب هوك الواردة." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "الحساب غير مرتبط بهذا المجال الفرعي" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "لا تقبل نقطة النهاية هذه طلبات الروبوت." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "يجب أن يكون مسؤول الخادم" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "إذن غير كاف" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "تتطلب نقطة النهاية هذه مصادقة HTTP الأساسية." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "رأس المصادقة غير صالح للمصادقة الأساسية" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "رأس المصادقة مفقود للمصادقة الأساسية" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "يمكن لروبوتات الويب هوك الوصول إلى الويب هوك فقط" @@ -3323,95 +3393,101 @@ msgstr "تم تعطيل حسابك {username}. يرجى الاتصال بمسؤ msgid "The password is too weak." msgstr "كلمة المرور ضعيفة للغاية." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "يجب أن يكون النطاق الفرعي بطول 3 أو أكبر." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "لا يمكن أن يبدأ النطاق الفرعي أو ينتهي بـ '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "يمكن أن يحتوي النطاق الفرعي على أحرف صغيرة وأرقام و'-' فقط." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "المجال الفرعي غير متوفر. رجاءً اختر واحد آخر." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "رجاءً استخدم عنوان بريدك الإلكتروني الحقيقي." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "المنظمة التي تحاول الانضمام إليها باستخدام {email} غير موجودة." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "يرجى طلب دعوة لـ {email} من مسؤول المنظمة." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "عنوان بريدك الإلكتروني {email}، ليس في أحد المجالات المسموح لها بالتسجيل في حسابات هذه المنظمة." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "غير مسموح بعناوين البريد الإلكتروني التي تحتوي على + في هذه المنظمة." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "لا يمكن للأعضاء الجدد الانضمام إلى هذه المنظمة لأن جميع تراخيص \"زوليب\" التي تملكها قيد الاستخدام. رجاءً تواصل مع الشخص الذي دعاك واطلب منه زيادة عدد التراخيص، ثم حاول مرة أخرى." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "كلمة مرور جديدة" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "تأكيد كلمة السر الجديدة" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "أنت تقوم بمحاولات كثيرة لتسجيل الدخول. حاول مرة أخرى خلال {} ثوانٍ أو تواصل مع مسؤول منظمتك للحصول على المساعدة." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "تم تعطيل كلمة المرور الخاصة بك لأنها ضعيفة للغاية. أعد تعيين كلمة المرور الخاصة بك لإنشاء كلمة مرور جديدة." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "رمز" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "رجاءً إدخال 10 رسائل بريد إلكتروني على الأكثر." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "لم نتمكن من العثور على منظمة \"زوليب\" تلك." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "بريد إلكتروني غير صحيح '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3475,31 +3551,31 @@ msgstr "لا يمكن أن تبدأ المجالات الفرعية أو تنت msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "يمكن أن يحتوي المجال فقط على أحرف وأرقام و '.' و '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "يجب ألا يكون الطابع الزمني سالبًا." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "يجب ألا يحتوي الموضوع على وحدات فارغة" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "يجب تحديد ID لغرفة واحدة فقط لرسائل الغرفة" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "قام المستخدم بتعطيل مزامنة المسودات." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "المسودة غير موجودة" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "افتح \"زوليب\" لرؤية محتوى المفسد" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "إشعارات \"زوليب\"" @@ -3532,166 +3608,166 @@ msgstr "لديه حساب بالفعل." msgid "Account has been deactivated." msgstr "تم تعطيل الحساب." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "الرمز التعبيري '{}' غير موجود" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "رمز تعبيري مخصص غير صالح." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "اسم رمز تعبيري مخصص غير صالح." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "تم تعطيل هذا الرمز التعبيري المخصص." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "شِفرة رمز تعبيري غير صالحة." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "اسم رمز تعبيري غير صالح." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "نوع رمز تعبيري غير صالح." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "يجب أن يكون مسؤول منظمة أو مؤلف رموز تعبيرية" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "اسم الرمز التعبيري مفقود" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "تعذر تخصيص قائمة انتظار الحدث" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "لم يتم تسجيل الدخول: يلزم مصادقة API أو جلسة المستخدم" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "الغرفة '{stream}' غير موجودة" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "الغرفة بالـID '{stream_id}' غير موجود" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "صاحب المنظمة" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "المستعمل" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "لا يمكن تعطيل {entity} فقط." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Markdown غير صالح يتضمن البيان: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "تجاوز استخدام API حد المعدل" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON تالف" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "يجب أن يكون عضوا في المنظمة" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "يجب أن يكون مسؤول منظمة" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "يجب أن يكون صاحب منظمة" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "اسم المستخدم أو كلمة المرور غير صحيحة" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "الحساب معطل" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "تم تعطيل هذه المنظمة" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "تم تعطيل تسجيل خدمة إرسال الإشعارات إلى الجوال لخادمك" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "تم تعطيل مصادقة كلمة المرور في هذه المنظمة " -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "تم تعطيل كلمة مرورك ويجب إعادة تعيينها" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "مفتاح API غير صالح" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "مفتاح API مشوه" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "الحدث '{event_type}' غير مدعوم حاليًا بواسطة الويب هوك {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "تعذر تحليل الطلب: هل أنشأ {webhook_name} هذا الحدث؟" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "المجال الفرعي غير صالح" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "تم رفض الوصول" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3699,6 +3775,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "التفاعل موجود بالفعل." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "رد الفعل غير موجود." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3740,8 +3824,8 @@ msgid "Settings" msgstr "Settings" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "انتقل إلى الإعدادات لتهيئة الإشعارات وإعدادات العرض." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3753,264 +3837,272 @@ msgid "" "and give it a go!" msgstr "انقر هنا لبدء محادثة جديدة. اختر موضوعًا (من الأفضل أن تكون كلمتان أو ثلاث كلمات) ، ثم جربه!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "أطر عمل الدمج" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "الدمج المستمر" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "دعم العملاء" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "تعيين" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "وسائل الترفيه" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "تواصل" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "المالية" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "تسويق" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "متنوع" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "ادارة مشروع" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "إنتاجية" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "التحكم في الإصدار" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "يجب ألا تكون الرسالة فارغة" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "يجب ألا تحتوي الرسالة على وحدات فارغة" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "عامل التشغيل {} غير مدعوم." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "مشغل تضيق العرض غير صالح: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "الوسيط 'anchor' مفقود." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "مذيع غير صالح" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "إذا كنت مستخدمًا جديدًا لـ \"زوليب\"، فراجع [دليل البدء]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "أهلا ومرحبا بكم في \"زوليب\"!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "يمكنني أيضًا مساعدتك في الإعداد! ما عليك سوى النقر في أي مكان على هذه الرسالة أو الضغط على 'r' للرد." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "فيما يلي بعض الرسائل التي أفهمها:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "انتقل إلى [إعدادات الملف الشخصي](#settings/profile) لإضافة [صورة الملف الشخصي](/help/change-your-profile-picture) وتعديل [معلومات ملفك الشخصي](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "انتقل إلى [إعدادات العرض](#settings/display-settings) وذلك [للتبديل بين الوضع المظلم والفاتح](/help/dark-theme)، [اختر سمة الرموز التعبيرية المفضلة لديك](/help/emoji-and-emoticons#change-your-emoji-set)، [قم بتغيير لغتك] (/help/change-your-language)، وقم بإجراء تعديلات أخرى على تجربتك في \"زوليب\"." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "في \"زوليب\"، الغرف [تحدد من يحصل على رسالة](/help/streams-and-topics). إنها تشبه القنوات الموجودة في تطبيقات الدردشة الأخرى." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[تصفح واشترك في الغرف](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "في \"زوليب\"، المواضيع [تخبرك عما تدور حوله الرسالة](/help/streams-and-topics). إنها مواضيع خفيفة، تشبه إلى حد كبير سطر الموضوع في رسالة البريد إلكتروني." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "يتيح لك \"زوليب\" [اختصارات لوحة المفاتيح](#keyboard-shortcuts) للتنقل في التطبيق بسرعة وكفاءة." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "اضغط على `?` في أي وقت لرؤية [ورقة الغش](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "\"زوليب\" يستخدم [Markdown](/help/format-your-message-using-markdown)، وهو تنسيق بديهي **للخط الغامق** و *المائل* والقوائم النقطية وغيرها. انقر [هنا](#message-formatting) للحصول على ورقة الغش." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "تحقق من [نصائحنا للمراسلة](/help/messaging-tips) للتعرف على ردود الفعل بواسطة الرموز التعبيرية وقطع الشفرات وغيرها كثير!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "راجع [دليلنا للبدء](/help/getting-started-with-zulip)، أو تصفح [مركز المساعدة](/help/) لمعرفة المزيد!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "أنا آسف لم أفهم رسالتك. الرجاء تجربة أحد الأوامر التالية:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "هذه غرفة خاصة، كما يتضح من رمز القفل بجانب اسم الغرفة." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "الغرف الخاصة مرئية فقط لأعضاء الغرفة." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "لإدارة هذه الغرفة، انتقل إلى [إعدادات البث]({stream_settings_url}) وانقر على `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "هذه رسالة في الغرفة #**{default_notification_stream_name}** بالموضوع `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "المواضيع هي أداة خفيفة للحفاظ على المحادثات منظمة." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "يمكنك معرفة المزيد حول المواضيع في [الغرف والمواضيع]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "هذه رسالة في الدفق #**{default_notification_stream_name}** بالموضوع `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4025,669 +4117,758 @@ msgstr "JSON غير صالح في الرد" msgid "Invalid response format" msgstr "تنسيق الرد غير صالح" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "خيار GCM غير صالح للحارس: الأولوية {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "خيارات GCM غير صالحة للحارس: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "الرمز غير موجود" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "لقد قامت هذه المنظمة بتعطيل تضمين محتوى الرسائل في الإشعارات المرسلة للجوال" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} المذكور @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "ذكرك {full_name}:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "ذكر {full_name} الجميع:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "المستخدم غير مخول لهذا الاستعلام" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' لم يعد يستخدم \"زوليب\"." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "خطأ حارس إرسال الإشعارات: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "لا يمكن الاختيار بين الوسيطين '{var_name1}' و '{var_name2}' " -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "الوسيط '{var_name}' مفقود" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "قيمة سيئة لـ '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "حمولة مشوهة" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "الوسيط \"{}\" ليس JSON صالح." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "أمان حساب \"زوليب\"" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "يمكن لمسؤولي المنظمة فقط الإرسال إلى هذه الغرفة." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "يمكن فقط لمسؤولي المنظمة والمشرفين الإرسال إلى هذه الغرفة." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "لا يمكن للضيوف الإرسال إلى هذه الغرفة." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "لا يمكن للأعضاء الجدد الإرسال إلى هذ الغرفة." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "غير مصرح له بالإرسال إلى الغرفة '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "الرجاء توفير 'غرفة'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "الرجاء اختيار أحدهم: 'stream' أو 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "مُعرف غرفة غير صالح" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "اسم الغرفة '{}' مستخدم بالفعل." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "اسم الغرفة غير صالح '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "الغرفة(الغرف) ({}) غير موجودة" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "لم يتم تمكين غرف الويب العامة." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "مجموعة الغرف الافتراضية بالـ ID '{}' غير موجودة." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "لا يمكن أن يكون اسم الغرفة فارغًا!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "اسم الغرفة طويل جدًا (الحد الأقصى: {} من الأحرف)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "حرف غير صالح في اسم الغرفة، في الموضع {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "لا يمكن أن يكون الموضوع فارغًا!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "حرف غير صالح في الموضوع، في الموضع {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "بيانات المشترك غير متوفرة لهذه الغرفة" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "تعذر استرداد المشتركين للغرفة الخاصة" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} ليس قيمة منطقية" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} ليس تاريخًا" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} ليس dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} ليس عددًا عشريًا" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} صغير جدًا" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} ليس عددًا صحيحًا" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} كبير جدًا" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} ليست قائمة" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} غير صالح" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} طويل جدًا (الحد: {max_length} حرفًا)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} ليس نص" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "قد يتجاوز التحميل حصة التحميل الخاصة بمنظمتك." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "تعذر فك تشفير الصورة؛ هل قمت بتحميل ملف صورة؟" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "حجم الصورة يتجاوز الحد." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "صورة متحركة تالفة." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "تنسيق صورة متحركة غير معروف." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "مجموعة مستخدم غير صالحة" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "الاسم طويل جدًا!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "الاسم قصير جدا!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "أحرف غير صالحة في الاسم!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "تنسيق غير صحيح!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "الاسم قيد الاستخدام بالفعل!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "اسم أو اسم مستخدم سيئ" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "دمج غير صالح '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "إعدادات التكوين المفقودة: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "قيمة {} غير صالحة {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "بيانات التكوين غير صالحة!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "نوع الروبوت غير صالح" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "نوع الواجهة غير صالح" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "ID المستخدم غير صالح: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "لا يوجد مثل هذا الروبوت" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "لا يوجد مثل هذا المستخدم" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "تم تعطيل المستخدم" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} ليس نص" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} لا يمكن أن يكون فارغًا." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} غير صالح" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} طويل جدًا (الحد: {max_length} حرفًا)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} له طول غير صحيح {length} ؛ يجب أن يكون {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} ليس تاريخًا" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} ليس عددًا صحيحًا" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} صغير جدًا" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} كبير جدًا" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} ليس عددًا عشريًا" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} ليس قيمة منطقية" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} ليست شِفرة لون hex صالحة" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} ليست قائمة" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} يجب أن يحتوي بالضبط على {length} عنصرًا" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} ليس dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "المفتاح {key_name} مفقود من {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "وسيطات غير متوقعة: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} ليس allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} خطأ)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} ليس عنوان URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' لا يمكن أن يكون فارغًا." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' ليس اختيارًا صالحًا لـ '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} ليس نص أو قائمة أعداد صحيحة" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} ليس نص أو عددًا صحيحًا" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} لا يحتوي على طول" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} مفقود" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "رأس حدث HTTP مفقود '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "الويب هوك {} يتوقع الوقت بالمللي ثانية." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "يجب أن يكون هناك شرطة مائلة في البداية في zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "لا يوجد مثل هذا الأمر: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "خطأ CSRF : {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "أحداث الغرفة" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "متوفر على سحابة \"زوليب\" الأساسية. قم بالترقية للوصول." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "أحرف غير صالحة في اسم الرموز التعبيرية" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "تعبير عادي سيء: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "خطأ غير معروف في التعبير العادي" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "أحرف غير صالحة في لغة pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "المشرفون والوسطاء والأعضاء والضيوف" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "المشرفون والوسطاء والأعضاء" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "المشرفون والوسطاء" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "صاحب المنظمة" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "مسؤول المنظمة" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "الوسيط" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "عضو" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "ضيف" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "الويب العامة" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "عامة" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "سجل خاص ومشترك" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "سجل خاص ومحمي" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "سجل عام ومحمي" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "جميع أعضاء الغرفة يمكنهم النشر" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "يمكن فقط لمسؤولي المنظمة النشر" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "يمكن فقط لمسؤولي المنظمة والوسطاء النشر" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "فقط أعضاء المنظمة الكاملين يمكنهم النشر" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "رموز Unicode التعبيرية" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "رموز تعبيرية مخصصة" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "رموز \"زوليب\" التعبيرية الإضافية" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "تم تعطيل المستخدم بالـ ID {}" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "المستخدم بالـ ID {} هو روبوت" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "قائمة الخيارات" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "منتقي الأشخاص" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "نص قصير" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "نص طويل" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "منتقي التاريخ" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "رابط" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "حساب خارجي" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "الضمائر" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "عنوان IP غير معروف" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "نظام تشغيل غير معروف" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "متصفح غير معروف" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "وسيط 'queue_id' مفقود" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "وسيط 'last_event_id' مفقود" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "تم بالفعل إزالة حدث أحدث من {event_id}!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "الحدث {event_id} لم يكن في قائمة الانتظار هذه" @@ -4755,89 +4936,123 @@ msgstr "يوجد بالفعل حقل بهذا التصنيف." msgid "Default custom field cannot be updated." msgstr "لا يمكن تحديث الحقل المخصص الافتراضي." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "نقطة النهاية غير متوفرة في الإنتاج." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "لم يتم تمكين DevAuthBackend." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "نقطة اتصال غير معروفة: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "يجب عليك تحديد عنوان بريد إلكتروني واحد على الأقل." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "الغرفة غير موجودة بالـ ID: {}. لم يتم إرسال دعوات." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "لا توجد مثل هذه الدعوة" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "تم تعطيل سجل تعديل الرسائل في هذه المؤسسة" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "ليس لديك إذن بحذف هذه الرسالة" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "انقضت المهلة المحددة لحذف هذه الرسالة" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "تم حذف الرسالة بالفعل" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "تم طلب عدد كبير جدًا من الرسائل (الحد الأقصى {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "لا يوجد مثل هذا الموضوع '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "المرسل مفقود" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "النسخ المتطابق غير مسموح به مع IDs المستخدم المستلم" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "رسالة معكوسة غير صالحة" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "لا يسمح بالنسخ المتطابق لـ Zephyr في هذه المنظمة" @@ -4853,27 +5068,28 @@ msgstr "تم كتم صوت المستخدم بالفعل" msgid "User is not muted" msgstr "المستخدم ليس مكتومًا" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "الحضور غير مدعوم لمستخدمي الروبوتات." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "لا يوجد بيانات التواجد لـ {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "لم يقم العميل بتمرير أي قيم جديدة." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "يجب أن يمرر العميل emoji_name إذا مرر إما emoji_code أو reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "حالة غير صالحة: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4889,37 +5105,37 @@ msgid "" "emoji_code" msgstr "يجب أن يكون أحد الوسطاء التاليين على الأقل موجود: emoji_name ، emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "رد الفعل غير موجود." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "لغة غير صالحة '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "يجب تمكين طريقة مصادقة واحدة على الأقل." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider غير صالح {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "giphy_rating غير صالح {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "يجب أن تكون منظمة تجريبية." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "مجال غير صالح: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4931,42 +5147,43 @@ msgstr "يعد النطاق {domain} جزءًا من منظمتك بالفعل." msgid "No entry found for domain {domain}." msgstr "لم يتم العثور على إدخال للمجال {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "يجب عليك تحميل ملف واحد بالضبط." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "الملف الذي تم تحميله أكبر من الحد المسموح به وهو {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "تم تجاوز حد المعدل." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "يرجى طلب تصدير يدوي من {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID تصدير البيانات غير صالح" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "تم حذف التصدير بالفعل" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4974,7 +5191,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "يجب عليك تحميل أيقونة واحدة بالضبط." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "الرابط غير موجود." @@ -4982,107 +5199,100 @@ msgstr "الرابط غير موجود." msgid "You must upload exactly one logo." msgstr "يجب عليك تحميل شعار واحد بالضبط." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "مكان تجربة شِفرة غير صالح" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "المستخدم غير مصرح له بتنفيذ استعلامات نيابة عن '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "لا يمكن جعل الغرف الخاصة افتراضية." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "يجب عليك تمرير \"new_description\" أو \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "قيمة غير صالحة لـ \"op\". حدد \"add\" أو \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "لا يمكن جعل الغرف الافتراضية خاصة." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "الغرفة لها هذا الاسم بالفعل!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "لا شيء لفعله. حدد واحدًا على الأقل من \"add\" أو \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} اشترك في الغرفة {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} اشركك في الغرف التالية:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "تعذر الوصول إلى الغرفة ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "يمكنك فقط دعوة مستخدمي Zephyr mirroring إلى الغرف الخاصة." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} أنشأ الغرف التالية: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} أنشأ غرفة جديدة {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "غُرف جديدة" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** تم إنشاء الغرفة بواسطة {user_name}. **الوصف:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "خاصية اشتراك غير معروفة: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "غير مشترك في ID الغرفة {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "json غير صالح للرسالة الفرعية" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

أنت غير مصرح لك لعرض هذا الملف.

" @@ -5098,97 +5308,108 @@ msgstr "قام المستخدم بتعطيل كتابة إشعارات لرسا msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

لم يتم العثور على الملف.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "رمز غير صالح" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "اسم الملف غير صالح" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "يجب عليك تحديد ملف للتحميل" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "يمكنك فقط تحميل ملف واحد في كل مرة" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "لم يتم توفير بيانات جديدة" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "المستخدم {user_id} عضو بالفعل في هذه المجموعة" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "لا يوجد عضو '{}' في مجموعة المستخدم هذه" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "تم تعطيل تغييرات الصورة الرمزية في هذه المنظمة." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "تم تعطيل تغييرات عنوان البريد الإلكتروني في هذه المنظمة." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "default_language غير صالحة" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "صوت الإشعار غير صالح '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "فترة تجميع البريد الإلكتروني غير الصالحة: {} ثانية" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "تتم إدارة كلمة مرورك لـ \"زوليب\" في LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "كلمة مرور خاطئة!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "أنت تقوم بمحاولات كثيرة! حاول مرة أخرى خلال {} ثانية." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "كلمة المرور الجديدة ضعيفة للغاية!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "يجب عليك تحميل صورة رمزية واحدة بالضبط." @@ -5235,6 +5456,10 @@ msgstr "اسم الروبوت المضمن غير صالح." msgid "Username already in use" msgstr "اسم المستخدم قيد الاستخدام بالفعل" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5245,8 +5470,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "عناوين البريد الإلكتروني المؤقتة غير مسموح بها في هذه المنظمة" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "البريد الاليكتروني '{}' قيد الاستخدام بالفعل" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5264,27 +5490,27 @@ msgstr "معرّف جلسة Zoom غير صالح" msgid "Invalid Zoom credentials" msgstr "بيانات اعتماد Zoom غير صالحة" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "فشل إنشاء مكالمة Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "لم يتم تكوين BigBlueButton." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "توقيع غير صالح." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "خطأ في الاتصال بخادم BigBlueButton." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "خطأ في المصادقة مع خادم BigBlueButton." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "أرجع خادم BigBlueButton خطأ غير متوقع." @@ -5304,28 +5530,28 @@ msgstr "ذاكرة التخزين المؤقت لـ Kerberos غير صالحة" msgid "We were unable to set up mirroring for you" msgstr "لم نتمكن من إعداد النسخ المتطابق لك" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "حمولة غير صالحة" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "طلب ويب هوك غير معروف" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "الموضوع لا يمكن أن يكون فارغًا" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "المحتوى لا يمكن أن يكون فارغًا" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "إدخال JSON تالف" @@ -5344,7 +5570,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5352,19 +5578,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "غير قادر على التعامل مع الحمولة المحورية" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "خطأ: إعداد channel_map_to_topics بخلاف 0 أو 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "رسالة من Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "إجراء ويب هوك لـ WordPress غير معروف: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5381,47 +5608,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "يجب التحقق من الصحة باستخدام مفتاح API لخادم \"زوليب\" صالح" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID غير صالح" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "نوع الرمز غير صالح" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} ليس اسم مضيف صالحًا" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "user_id أو user_uuid مفقود" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "خاصية غير صالحة {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "البيانات خارج الترتيب." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "بيانات غير صالحة." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "تحتاج إلى إعادة تعيين كلمة المرور الخاصة بك." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "إعداد id_token مفقود" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP غير صحيح" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "لا يمكن استخدام كل من mobile_flow_otp و desktop_flow_otp معًا." diff --git a/locale/ar/translations.json b/locale/ar/translations.json index 07fb860e6a..86b4263ad8 100644 --- a/locale/ar/translations.json +++ b/locale/ar/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(مخفي)", "(no description)": "(بدون وصف)", "(no topic)": "(لا يوجد موضوع)", + "(or )": "", "(you)": "(أنت)", "({message_retention_days} days)": "({message_retention_days} أيام)", "/dark (Switch to the dark theme)": "/dark (قم بالتبديل إلى الوضع المظلم)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} غير مشترك في هذه الغرفة. لن يتم إرسال إشعار لهم ما لم تشترك معهم.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} لديه {number_of_invites_by_user} دعوات غير منتهية الصلاحية.", "Subscribe": "الإشتراك", - "Click here to learn about exporting private streams and messages.": "انقر هنا للتعرف على تصدير الغرف والرسائل الخاصة.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "ترقية لمزيد من المساحة.", " to add a new line": "لإضافة سطر جديد", " to send": "للإرسال", @@ -82,15 +83,18 @@ "Add alert word": "إضافة كلمة تنبيه", "Add all users": "إضافة كل المستخدمين", "Add another user...": "إضافة مستخدم آخر ...", + "Add audio call": "", "Add code playground": "إضافة مكان تجربة الشِفرة", + "Add default streams": "", + "Add email": "", "Add emoji": "أضف رمز تعبيري", "Add emoji reaction": "إضافة رد فعل تعبيري", "Add extra emoji for members of the {realm_name} organization.": "أضف المزيد من الرموز التعبيرية لأعضاء مؤسسة {realm_name}.", "Add global time": "إضافة التوقيت العالمي", "Add linkifier": "إضافة رابط", "Add members": "إضافة اعضاء", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "إضافة عضو…", - "Add new default stream": "إضافة غرفة افتراضية جديدة", "Add new user group": "إضافة مجموعة مستخدمين جديدة", "Add one or more users": "أضف مستخدما واحدا أو أكثر", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "إضافة المشتركين. استخدم usergroup أو #streamname لإضافة مشتركين بشكل جماعي.", "Add task": "إضافة مهمة", "Add video call": "أضف مكالمة فيديو", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "أضيف بنجاح!", "Added successfully.": "أضيف بنجاح.", "Administrator": "مسؤول", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "الجميع", "All direct messages": "كل الرسائل المباشرة", + "All groups": "", "All messages": "جميع الرسائل", "All messages including muted streams": "جميع الرسائل بما في ذلك الغرف الصامتة", "All streams": "كل التيارات", @@ -136,9 +142,11 @@ "Allow subdomains": "السماح بالمجالات الفرعية", "Allowed domains": "المجالات المسموح بها", "Allowed domains: {domains}": "المجالات المسموح بها: {domains}", + "Already members:": "", "Already not subscribed.": "بالفعل غير مشترك.", "Already subscribed to {stream}": "مشترك بالفعل في {stream}", "Already subscribed users:": "المستخدمون المشتركون بالفعل:", + "Already subscribed.": "", "Always": "دائما", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "يمكن استخدام مفتاح الـ API للوصول برمجيًا إلى حساب \"زوليب\". يتمتع أي شخص لديه الوصول إلى مفتاح الـ API الخاص بك بالقدرة على قراءة رسائلك وإرسال الرسائل نيابةً عنك وينتحل شخصيتك على \"زوليب\"، لذلك يجب عليك حماية مفتاح الـ API الخاص بك بعناية كما تحمي كلمة مرورك.
نوصي بإنشاء روبوتات واستخدام حسابات الروبوتات ومفاتيح الـ API للوصول إلى الـ API الخاص بـ \"زوليب\"، ما لم تتطلب المهمة الوصول إلى حسابك.", "An hour ago": "قبل ساعة", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "أرشفة الغرفة", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "أرشفة الغرفة سيلغي اشتراك الجميع فورًا. لا يمكن التراجع عن هذا الإجراء بعد القيام به.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "هل أنت متأكد أنك تريد إنشاء غرفة \"\"{stream_name}\"\" واشراك {count} مستخدمين فيها؟", "Are you sure you want to deactivate this organization?": "هل أنت متأكد أنك تريد إلغاء تنشيط هذه المنظمة؟", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "هل أنت متأكد أنك تريد إعادة إرسال الدعوة إلى؟", "Are you sure you want to revoke the invitation to {email}?": "هل أنت متأكد أنك تريد إلغاء الدعوة الموجهة إلى {email}؟", "Are you sure you want to revoke this invitation link created by {referred_by}?": "هل أنت متأكد أنك تريد إلغاء رابط الدعوة الذي أنشأه {referred_by}؟", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "هل أنت متأكد من أنك تريد إلغاء نجمة جميع الرسائل الموجودة في؟ لا يمكن التراجع عن هذا الإجراء بعد القيام به.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "هل أنت متأكد أنك تريد إلغاء النجمة عن جميع الرسائل المميزة بنجمة؟ لا يمكن التراجع عن هذا الإجراء بعد القيام به.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "تم تعطيل إمكانية تغيير الصورة الرمزية في هذه المنظمة", "Avatar from Gravatar": "الصورة الرمزية من Gravatar", "Back to streams": "العودة إلى الغرف", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "الفواتير", @@ -190,8 +201,11 @@ "Bot owner": "مالك الروبوت", "Bot type": "نوع البوت", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "تصفح الغرف", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "عمل تجاري", "Busy": "مشغول", "By deactivating your account, you will be logged out immediately.": "بإلتعطيل حسابك ، سيتم تسجيل خروجك على الفور.", @@ -218,6 +232,8 @@ "Click here to reveal.": "انقر هنا للكشف.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "انقر خارج مربع الإدخال للحفظ. سنقوم تلقائيًا بإشعار أي شخص تمت إضافته أو إزالته.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "انقر للعرض أو التحميل.", "Close": "اغلاق", "Close modal": "إغلاق مشروط", @@ -232,7 +248,7 @@ "Commuting": "التنقل", "Compact": "المدمج", "Complete": "اكتمل", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "أكمل ال الملف التعريفي للمنظمة للعلامة التجارية واشرح الغرض من منظمة \"زوليب\" هذه.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "اكتب رسالة", "Compose your message here": "اكتب رسالتك هنا", "Compose your message here...": "ألّف رسالتك هنا...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "تحويل الرموز قبل الإرسال (:) تصبح 😃)", "Cookie Bot": "بوت ملفات تعريف الارتباط", "Copied!": "نسخ!", + "Copy URL": "", "Copy address": "", "Copy and close": "نسخ وإغلاق", "Copy code": "نسخ الشِفرة", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "جارٍ عرض جميع الرسائل.", "Currently viewing the entire stream.": "جارٍ عرض كل الغرفة.", "Custom": "مخصص", + "Custom URL": "", "Custom emoji": "الرموز التعبيرية المخصصة", "Custom language: {query}": "لغة مخصصة: {query}", "Custom linkifier added!": "تمت إضافة رابط مخصص!", @@ -302,10 +320,12 @@ "Deactivated": "معطل", "Deactivated users": "المستخدمون المعطّلون", "December": "كانون الاول", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "الافتراضي هو {language}. استخدم \"النص\" لإلغاء التمييز.", "Default language for code blocks": "اللغة الافتراضية لقطع الشِفرة البرمجية", "Default streams": "الغرف الافتراضية", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "إعدادات المستخدم الافتراضية", "Default view": "العرض الافتراضي", @@ -314,12 +334,14 @@ "Delete": "حذف", "Delete alert word": "حذف كلمة التنبيه", "Delete all drafts": "حذف كل المسودات", + "Delete all selected drafts": "", "Delete code playground?": "حذف مكان تجربة الشِفرة؟", "Delete custom profile field?": "حذف حقل الملف الشخصي المخصص؟", "Delete data export?": " حذف تصدير البيانات؟", "Delete draft": "حذف المسودة", "Delete file": "حذف الملف", "Delete file?": "حذف الملف؟", + "Delete group": "", "Delete icon": "حذف الرمز", "Delete linkifier?": "حذف الرابط؟", "Delete logo": "حذف الشعار", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "بناءً على حجم مؤسستك ، يمكن أن يستغرق التصدير من ثانية إلى ساعة.", "Deprecation notice": "إشعار الإيقاف", "Description": "وصف", + "Deselect draft": "", "Desktop": "سطح المكتب", "Desktop & mobile apps": "تطبيقات سطح المكتب والأجهزة المحمولة", "Desktop message notifications": "إشعارات رسائل سطح المكتب", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "توثيق مفصل لتنسيق الرسالة", "Detailed search filters documentation": "", "Direct message": "رسالة مباشرة", + "Direct message to me": "", "Direct messages": "الرسائل المباشرة", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "معطل", "Discard": "تجاهل", @@ -360,9 +385,9 @@ "Display my availability to other users": "إظهار توفري للمستخدمين الآخرين", "Display names of reacting users when few users have reacted to a message": "إظهار اسماء المستخدمين المتفاعلين عندما يتفاعل عدد قليل من المستخدمين للرسالة", "Display on user card": "", - "Display settings": "اعدادات العرض", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "هل تريد إضافة الجميع؟", + "Do you want to mark them all as read?": "", "Domain": "مجال", "Don’t allow disposable email addresses": "لا تسمح بعناوين البريد الإلكتروني المؤقتة", "Download": "تحميل", @@ -388,7 +413,7 @@ "Edit custom profile field": "تعديل حقل الملف الشخصي المخصص", "Edit linkfiers": "تعديل الروابط", "Edit message": "تعديل الرسالة", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "تعديل المسودة المحددة", "Edit selected message or view source": "", "Edit status": "تعديل الحالة", @@ -398,7 +423,6 @@ "Edit your last message": "عدل رسالتك الأخيرة", "Edit your profile": "عدل ملفك الشخصي", "Edit {group_name}": "تعذيل {group_name}", - "Edited ({last_edit_timestr})": "تم التعديل ({last_edit_timestr})", "Edited by {full_name}": "عدله {full_name}", "Education (for-profit)": "التعليم (الربحي)", "Education (non-profit)": "التعليم (غير الربحي)", @@ -461,6 +485,7 @@ "External account type": "نوع الحساب الخارجي", "External link": "رابط خارجي", "Failed": "باءت بالفشل", + "Failed adding one or more streams.": "", "Failed to create video call.": "فشل إنشاء مكالمة فيديو.", "Failed to generate preview": "فشل إنشاء المعاينة", "Failed to upload %'{file}'": "فشل الرفع ٪'{file}';", @@ -485,11 +510,9 @@ "Filter exports": "تصفية الصادرات", "Filter groups": "تصفية المجموعات", "Filter invites": "تصفية الدعوات", - "Filter languages": "تصفية اللغات", "Filter linkifiers": "وصلات التصفية", "Filter members": "تصفية الأعضاء", "Filter muted users": "تصفية المستخدمين المكتومين", - "Filter roles": "", "Filter streams": "تصفية الغرف", "Filter subscribers": "تصفية المشتركين", "Filter topics": "تصفية المواضيع", @@ -500,6 +523,9 @@ "First message": "الرسالة الأولى", "First time? Read our guidelines for creating and naming streams.": "أول مرة؟ اقرأ قواعدنا الإرشادية لإنشاء وتسمية الغرف.", "First time? Read our guidelines for creating user groups.": "أول مرة؟ اقرأ قواعدنا الإرشادية لإنشاء مجموعات المستخدمين.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "إسناد GIPHY", "GIPHY integration": "دمج GIPHY", "General": "عام", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "إنشاء رابط الدعوة", "Generate new API key": "إنشاء مفتاح API جديد", @@ -542,14 +569,18 @@ "High contrast mode": "وضع التباين العالي", "Hint": "تلميح", "Hint (up to 80 characters)": "تلميح (ما يصل إلى 80 حرفًا)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humans", "Idle": "خامل", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "المستخدمون المعطّلون الذين تم تجاهلهم:", "Image": "صورة", "In a meeting": "في اجتماع", "Inactive": "غير نشط", "Inactive bots": "روبوتات غير نشطة", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "تضمين محتوى الرسالة في رسائل البريد الإلكتروني للإشعارات", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "يمكن للويب هوك الواردة إرسال الرسائل فقط.", "Initiate a search": "ابدأ بحث", "Insert new line": "أدخل سطر جديد", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "إدماجات", "Interface": "واجهة المستخدم", "Invalid URL": "عنوان URL غير صالح", @@ -581,6 +614,8 @@ "Inviting...": "دعوة...", "Italic": "مائل", "January": "كانون الثاني", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "انضم إلى {realm_name}", "Joined": "انضم", @@ -599,8 +634,10 @@ "Last 30 days": "آخر 30 يومًا", "Last 6 months": "آخر 6 أشهر", "Last active": "آخر نشاط", + "Last edited {last_edit_timestr}": "", "Last message": "اخر رسالة", "Last modified": "آخر تعديل", + "Last moved {last_edit_timestr}": "", "Learn more": "معرفة المزيد", "Learn more about mentions here.": "معرفة المزيد عن الإشارات هنا.", "Learn more about starring messages here.": "معرفة المزيد حول تمييز الرسائل بنجمة هنا.", @@ -623,6 +660,7 @@ "Log out": "تسجيل الخروج", "Looking for our integrations or API documentation?": "تبحث عن توثيق الإندماجات أو الـ API الخاص بنا؟", "MOVED": "انتقل", + "Main menu": "", "Manage bot": "إدارة الروبوت", "Manage streams": "إدارة الغرف", "Manage this bot": "إدارة هذا الروبوت", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "اذكر وقت المنطقة الزمنية", "Mentioned in": "مذكور في", "Mentions": "الإشارات", - "Menu": "قائمة", "Menus": "القوائم", "Message #{stream_name}": "الرسالة {stream_name}", "Message #{stream_name} > {topic_name}": "الرسالة #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "رسالة {recipient_names}", "Message {recipient_name} ({recipient_status})": "الرسالة {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "جوال", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "نقل هذه الرسالة وجميع الرسائل التالية في هذا الموضوع", "Move topic": "نقل موضوع", - "Moved ({last_edit_timestr})": "تم النقل ({last_edit_timestr})", "Moved by {full_name}": "تم النقل بواسطة {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "يجب أن تتم الدعوة من قبل المشترك؛ يمكن للمشتركين الجدد فقط رؤية الرسائل المرسلة بعد انضمامهم ؛ مخفية عن المستخدمين غير المسؤولين", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "يجب أن تتم الدعوة من قبل المشترك؛ يمكن للمشتركين الجدد عرض سجل الرسائل بالكامل؛ مخفية عن المستخدمين غير المسؤولين", + "Mute": "", "Mute stream": "كتم الغرفة", "Mute this user": "كتم هذا المستخدم", "Mute topic": "كتم الموضوع", @@ -734,38 +773,42 @@ "New password is too weak": "كلمة المرور الجديدة ضعيفة للغاية", "New stream announcements": "إعلانات الغرفة الجديدة", "New stream message": "رسالة تيار جديد", + "New stream notifications": "إشعارات الغرفة الجديدة", "New task": "مهمة جديدة", "New topic": "موضوع جديد", "New user announcements": "إعلانات المستخدم الجديد", + "New user notifications": "إشعارات المستخدم الجديد", "Next message": "الرسالة التالية", "Next unread direct message": "الرسالة المباشرة الغير مقروءة التالية", "Next unread topic": "الموضوع غير المقروء التالي", - "Next week": "الاسبوع القادم", "No bots match your current filter.": "لا روبوتات تطابق تصفيتك الحالية.", + "No conversations match your filters.": "", "No custom emoji.": "لا رموز تعبيرية مخصصة.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "لا توجد غُرف افتراضية تطابق تصفيتك الحالية.", "No description.": "لا يوجد وصف.", + "No drafts selected": "", "No drafts.": "لا توجد مسودات.", "No exports.": "لا توجد صادرات.", "No invites match your current filter.": "لا توجد دعوات تطابق تصفيتك الحالية.", "No language set": "لم يتم تعيين لغة", "No linkifiers set.": "لم يتم تعيين روابط.", + "No matching results": "", "No matching users.": "لا يوجد مستخدمون مطابقون.", "No one has read this message yet.": "لم يقرأ أي أحد هذه الرسالة بعد.", "No owner": "لا يوجد مالك", "No playgrounds configured.": "لم يتم انشاء أماكن لتجربة الشِفرة.", "No restrictions": "لا يوجد قيود", "No scheduled messages.": "", - "No search results": "لا نتائج للبحث", "No search results.": "", "No stream subscriptions.": "لا توجد اشتراكات للغرفة.", "No streams": "لا غُرف", "No topics are marked as resolved.": "لم يتم تمييز أي موضوع على أنه تم حله.", - "No topics match your current filter.": "لا يوجد موضوع يطابق تصفيتك الحالية.", "No user group subscriptions.": "لا توجد اشتراكات لمجموعة المستخدمين.", "No user groups": "", "No user to subscribe.": "لا يوجد مستخدم للاشتراك.", "No users match your current filter.": "لا يوجد مستخدمون يطابقون تصفيتك الحالية.", + "No users to add.": "", "No, I'll catch up.": "لا ، سوف ألحق بالركب.", "Nobody": "لا أحد", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "إشعار غرفة", "Notify this user by email?": "إشعار هذا المستخدم عبر البريد الإلكتروني؟", "November": "تشرين الثاني", + "Numbered list": "", "October": "تشرين الأول", "Old password": "كلمة المرور القديمة", "Once you leave this group, you will not be able to rejoin.": "عند مغادرة هذه المجموعة، لن تتمكن من الانضمام مرة أخرى.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "يمكن فقط للمالكين تغيير هذه الإعدادات.", "Only stream members can add users to a private stream": "يمكن فقط لأعضاء الغرفة إضافة مستخدمين إلى الغرفة الخاصة", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "يمكن للمشتركين في هذه الغرفة فقط تعديل أذونات الغرفة.", "Open": "فتح", "Open message menu": "فتح قائمة الرسائل", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "مجموعة سياسية", "Posted by {full_name}": "تم النشر بواسطة {full_name}", + "Preferences": "", "Press > for list of topics": "اضغط على > للحصول على قائمة المواضيع", "Prevent users from changing their avatar": "منع المستخدمين من تغيير صورتهم الرمزية", "Prevent users from changing their email address": "منع المستخدمين من تغيير عناوين بريدهم الإلكتروني", @@ -869,6 +915,7 @@ "Previous message": "الرسالة السابقة", "Privacy": "خصوصية", "Privacy settings": "إعدادات الخصوصية", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "السجل خاص ومحمي", "Private, shared history": "السجل خاص ومشترك", "Profile": "حساب تعريفي", @@ -883,6 +930,7 @@ "Reactivate bot": "إعادة تنشيط البوت", "Reactivate this bot": "إعادة تفعيل هذا الروبوت", "Reactivate this user": "أعد تنشيط هذا المستخدم", + "Reactivate user": "", "Reactivate {name}": "إعادة تنشيط {name}", "Read receipts": "مؤشرات القراءة", "Read receipts are currently disabled in this organization.": "مؤشرات القراءة معطلة بالفعل في هذه المنظمة", @@ -930,6 +978,7 @@ "Saved as draft": "تم الحفظ كمسودة", "Saved. Please reload for the change to take effect.": "تم الحفظ. رجاءً أعد التحميل حتى يدخل التغيير حيز التنفيذ.", "Saving": "حفظ", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "تعرف على كيفية تهيئة البريد الإلكتروني.", "Select a stream": "", "Select a stream below or change topic name.": "حدد غرفة أدناه أو غيير اسم الموضوع.", - "Select date and time": "حدد التاريخ والوقت", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "حدد الرموز التعبيرية", "Select language": "اختر اللغة", + "Select stream": "", "Send": "إرسال", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "ارسال ملاحظة تلقائية لموضوع جديد", "Send automated notice to old topic": "ارسال ملاحظة تلقائية لموضوع قديم", "Send digest emails when I'm away": "إرسال موجز رسائل البريد الإلكتروني عندما أكون بعيدًا", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "إظهار معاينات الصور التي تم تحميلها وربطها", "Show starred message count": "إظهار عدد الرسائل المميزة بنجمة", "Show status text": "إظهار نص الحالة", + "Show unread counts for": "", "Show/change your API key": "إظهار / تغيير مفتاح API الخاص بك", "Sign up": "سجل", "Silent mentions do not trigger notifications.": "لا تؤدي الإشارات المكتومة إلى إرسال الإشعارات.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "الترتيب حسب الحركة الأسبوعية المقدرة", "Sort by name": "الترتيب حسب الاسم", "Sort by number of subscribers": "الترتيب حسب عدد المشتركين", + "Sort by unread message count": "", "Spoiler": "المفسد", "Star": "نجمة", "Star selected message": "تمييز الرسالة المحددة بنجمة", @@ -1024,8 +1080,10 @@ "Subscribe": "الإشتراك", "Subscribe them": "اشترك معهم", "Subscribe to/unsubscribe from selected stream": "الاشتراك/إلغاء الاشتراك من الغرفة المحددة", + "Subscribe {full_name} to streams": "", "Subscribed": "مشترك", "Subscribed streams": "غرف الاشتراك", + "Subscribed successfully!": "", "Subscriber count": "عدد المشتركين", "Subscribers": "مشتركين", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "لا توجد كلمات تنبيه حالية.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "يديرون الروبوتات التالية:", "This Zulip server is running an old version and should be upgraded.": "يعمل خادم \"زوليب\" هذا على إصدار قديم ويجب ترقيته.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "هذه ليست محادثة متاحة للعامة.", "This is what a Zulip notification looks like.": "هذا ما يبدو عليه إشعار \"زوليب\".", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "تم إخفاء هذه الرسالة لأنك كتمت صوت المرسل.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "المنطقة الزمنية", "Time's up!": "انتهى الوقت!", "Tip: You can also send \"/poll Some question\"": "نصيحة: يمكنك أيضًا إرسال \"/استطلاع بعض الأسئلة\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "لإضافة تمييز على مظهر الجملة إلى قطعة شِفرة برمجية متعددة الأسطر، أضف اللغة أولاً الاسم المختصر لـ Pygments بعد أول مجموعة من back-ticks. يمكنك أيضًا إنشاء قطعة شِفرة برمجية عن طريق ترك مسافة بادئة لكل سطر بأربع مسافات.", "To invite users, please increase the number of licenses or deactivate inactive users.": "لدعوة المستخدمين، من فضلك قم بزيادة عدد التراخيص أو تعطيل المستخدمين غير النشطين.", "To preserve your reading state, this view does not mark messages as read.": "للحفاظ على حالة القراءة لك، لا يقوم هذا العرض بوضع علامة على الرسائل كمقروءة.", "Today": "اليوم", @@ -1112,7 +1170,6 @@ "Toggle subscription": "تبديل الاشتراك", "Toggle the gear menu": "تبديل قائمة التحكم", "Toggle topic mute": "تبديل كتم الموضوع", - "Tomorrow": "غدًا", "Tomorrow at {time}": "", "Topic": "موضوع", "Topic muted": "تم كتم الموضوع", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "ايقاف تشغيل الوضع غير المرئي", "Two factor authentication": "المصادقة الثنائية", "Type": "نوع", + "URL": "", + "URL for your integration": "", "URL pattern": "نمط عنوان URL", - "URL prefix": "بادئة URL", "URL template": "", "USERS": "المستخدمون", "Uncheck all": "إلغاء الكل", @@ -1139,6 +1197,7 @@ "Unmute this user": "إلغاء كتم هذا المستخدم", "Unmute topic": "إلغاء كتم الموضوع", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "قم بإلغاء تثبيت الغرفة من الأعلى", "Unread": "غير مقروء", "Unread count badge (appears in desktop sidebar and browser tab)": "شارة عدد غير المقروءة (تظهر في الشريط الجانبي لسطح المكتب وعلامة تبويب المتصفح)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "عرض الرسائل المباشرة", "View drafts": "عرض المسودات", - "View edit history": "عرض سجل التعديل", + "View edit and move history": "", "View file": "استعراض الملف", "View in playground": "عرض في مكان تجربة الشِفرة", "View in {name}": "عرض في {name}", @@ -1227,9 +1286,10 @@ "Web-public": "الويب العام", "Wednesday": "الأربعاء", "Week of {date}": "أسبوع {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "مرحبا بعودتك! لديك {unread_msgs_count} رسائل غير مقروءة. هل تريد تمييزهم جميعًا كمقروءة؟", + "Welcome back!": "", "What pronouns should people use to refer to you?": "ما هي الضمائر التي يجب أن يستخدمها الناس للإشارة إليك؟", "When you deactivate , they will be immediately logged out.": "عندما تلغي التنشيط ، سيتم تسجيل خروجهم على الفور.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "ما إذا كانت إشارات أحرف البدل مثل @all يتم التعامل معها على أنها إشارات لغرض الإشعارات.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "من يمكنه الوصول إلى الغرفة؟", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "من يمكنه إنشاء وإدارة مجموعات المستخدمين", "Who can create private streams": "من يمكنه إنشاء غرف خاصة", "Who can create public streams": "من يمكنه إنشاء غرف عامة", + "Who can create reusable invitation links": "", "Who can create web-public streams": "من يمكنه إنشاء غرف عامة على الويب", "Who can delete their own messages": "من يمكنه حذف رسائله الخاصة", - "Who can invite users to this organization": "من يمكنه دعوة المستخدمين لهذه المنظمة", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "من يمكنه النشر في الغرفة؟", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "من يمكنه استخدام الإشارة @all/@everyone في الغرف الكبيرة", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "انت و", "You and {display_reply_to}": "أنت و {display_reply_to}", "You and {recipients}": "أنت و {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "أنت غير مشترك حاليا في هذه الغرفة.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "أنت ترسل رسالة إلى موضوع تم حله. يمكنك الإرسال والموضوع كما هو أو إلغاء حل الموضوع أولاً.", "You are using an old version of the Zulip desktop app with known security bugs.": "أنت تستخدم إصدارًا قديمًا من تطبيق \"زوليب\" لسطح المكتب مع أخطاء أمنية معروفة.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "أنت غير مشترك في هذه الغرفة ولم يتحدث أحد عن ذلك بعد!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "يمكنك أيضا أن تجعل الجداول مع صيغة جداول Markdown-ish.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "يمكنك الوصول الكامل إلى هذا المجتمع والمشاركة في المحادثات من خلال إنشاء حساب Zulip في هذه المنظمة.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "ليس لديك الإذن لاستخدام إشارات أحرف البدل في هذه الغرفة.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "لقد حصلت", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "لقد كتمت .", + "You have muted this topic": "", "You have no active bots.": "ليس لديك روبوتات نشطة.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "ليس لديك اي رسائل مباشرة مع هذا الشخص حتي الان.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "لم تقم بكتم أي مستخدم حتى الآن.", "You have not sent any direct messages to yourself yet!": "إنك لم ترسل أي رسائل مباشرة إلى نفسك حتى الآن!", "You have not uploaded any files.": "لم تقم برفع أي ملفات.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "لم يتم ذكرك بعد!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "يجب أن تكون مسؤول منظمة لإنشاء غرفة بدون اشتراك.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "تحتاج إلى تشغيل Zephyr mirroring من أجل إرسال الرسائل!", "You searched for:": "لقد بحثت عن:", "You subscribed to stream ": "", "You type": "أنت تكتب", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "أنت غير مشترك في هذه الغرفة. لن يتم إعلامك إذا قام المستخدمون الآخرون بالرد على رسالتك.", "Your API key:": "مفتاح API الخاص بك:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "تم تعطيل حساب Zulip الخاص بك في، ولن تتمكن بعد الآن من تسجيل الدخول.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "يحتاج \"زوليب\" إرسال بريد إلكتروني لتأكيد عناوين المستخدمين وإرسال الإشعارات.", "Zulip needs your permission to enable desktop notifications.": "\"زوليب\" يحتاج إلى إذنك لتمكين إشعارات سطح المكتب.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "ساهم مجتمع المترجمين المتطوعين لدينا في ترجمة \"زوليب\". إذا كنت ترغب في المساعدة، فراجع ملفإرشادات ترجمة \"زوليب\".", "[Configure]": "[تهيئة]", - "[Disable]": "[تعطيل]", - "[More…]": "[أكثر…]", "[Quoting…]": "[نقلا عن ...]", - "[Unset]": "[غير محدّد]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "و {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "تجريبي", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "مجموعة الرسائل المباشرة مع {recipient}", "he/him": "هو/ ـه", - "in 1 hour": "في ساعة واحدة", - "in 20 minutes": "في 20 دقيقة", - "in 3 hours": "في 3 ساعات", "invisible mode off": "الوضع الغير مرئي مقفل", "leafy green vegetable": "الخضار الورقية الخضراء", "marketing": "تسويق", "more conversations": "", "more topics": "المزيد من المواضيع", - "or": "أو", "she/her": "هي/ ـها", "they/them": "هم/ ـهم", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, zero {} one {} two {} few {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "قبل {days_old} يوم", "{full_name} is typing…": "{full_name} يكتب…", "{hours} hours ago": "قبل {hours} ساعة", - "{items_selected} selected": "تم تحديد {items_selected}", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, zero {} one {} two {} few {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} دقيقة للتعديل", "{minutes} minutes ago": "منذ {minutes} دقيقة", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, zero {تمت قراءة هذه الرسالة بواسطة {num_of_people} شخص:} one {تمت قراءة هذه الرسالة بواسطة شخص واحد {num_of_people}:} two {تمت قراءة هذه الرسالة بواسطة {num_of_people} شخصين:} few {تمت قراءة هذه الرسالة بواسطة {num_of_people} اشخاص:} many {تمت قراءة هذه الرسالة بواسطة {num_of_people} اشخاص:} other {تمت قراءة هذه الرسالة بواسطة {num_of_people} اشخاص:}}", "{seconds} sec to edit": "{seconds} ثانية للتعديل", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} الوقت المحلي", "{username} [said]({link_to_message}):": "{username} [said]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} تفاعل مع {emoji_name}" diff --git a/locale/be/LC_MESSAGES/django.po b/locale/be/LC_MESSAGES/django.po index 018f111d72..a803eb45fb 100644 --- a/locale/be/LC_MESSAGES/django.po +++ b/locale/be/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -20,46 +20,46 @@ msgstr "" "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || " "(n%100>=11 && n%100<=14)? 2 : 3);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -116,32 +116,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -261,7 +261,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -571,9 +571,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -591,9 +591,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -603,9 +603,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -914,7 +914,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -943,7 +943,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1174,8 +1173,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1183,7 +1334,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1193,647 +1376,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1861,15 +1437,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1884,6 +1455,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1897,6 +1473,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1915,6 +1503,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1922,6 +1520,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1933,204 +1543,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2140,6 +1555,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2157,6 +1577,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2164,6 +1589,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2188,14 +1627,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2214,6 +1653,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2231,6 +1682,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2238,6 +1696,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2332,6 +1798,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2345,6 +1829,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2353,6 +1882,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2415,6 +1958,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2443,6 +1994,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2451,6 +2090,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2467,6 +2129,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2742,7 +2462,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3251,16 +2971,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3269,7 +2989,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3326,27 +3046,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3386,72 +3106,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3470,74 +3184,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3570,32 +3292,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3605,38 +3327,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3656,7 +3378,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3677,12 +3399,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3713,90 +3436,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3867,31 +3594,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3971,131 +3698,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4140,7 +3866,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4153,92 +3879,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4432,67 +4158,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4516,8 +4229,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4530,101 +4243,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4647,498 +4447,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5231,57 +4985,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5299,19 +5081,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5327,25 +5109,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5368,26 +5150,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5416,33 +5198,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5450,7 +5232,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5470,88 +5252,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5597,87 +5370,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5758,27 +5531,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5802,24 +5575,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5838,7 +5611,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5846,20 +5619,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5894,20 +5667,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5919,10 +5692,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/be/translations.json b/locale/be/translations.json index c376c91f20..43acbef02c 100644 --- a/locale/be/translations.json +++ b/locale/be/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/bg/LC_MESSAGES/django.po b/locale/bg/LC_MESSAGES/django.po index 8754f47886..8a8cf9a016 100644 --- a/locale/bg/LC_MESSAGES/django.po +++ b/locale/bg/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Veselin Georgiev , 2018\n" "Language-Team: Bulgarian (http://app.transifex.com/zulip/zulip/language/bg/)\n" @@ -19,46 +19,47 @@ msgstr "" "Language: bg\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Няма налични данни за анализ. Моля свържете се с вашия администратор на сървъра." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -119,29 +120,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -173,7 +176,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -189,14 +192,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -208,7 +211,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -258,7 +261,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -560,9 +563,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -580,9 +583,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -592,9 +595,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -857,51 +860,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Благодарим ви за регистрацията!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Не сте получили писмо? Ние ще ви го пратим отново." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "За всеки случай, проверете вашата папка Спам." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Опитай сега." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -1149,6 +1152,159 @@ msgstr "Нормални потребители" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Добре дошли в Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1156,6 +1312,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1169,22 +1358,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1239,17 +1415,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1354,225 +1519,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Добре дошли в Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Към Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1657,14 +1603,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1696,21 +1642,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1718,21 +1688,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1775,29 +1745,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1960,6 +1930,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1988,6 +1966,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Към Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2376,7 +2426,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2876,290 +2926,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3175,8 +3228,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3195,18 +3248,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3215,38 +3282,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3256,56 +3323,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3320,94 +3390,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3472,31 +3548,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3529,166 +3605,166 @@ msgstr "" msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3696,6 +3772,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3737,7 +3821,7 @@ msgid "Settings" msgstr "Настройки" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3750,264 +3834,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4022,669 +4114,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Само администратори" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Потребител" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Гост" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Публичен" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4752,66 +4933,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4819,22 +5033,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4850,26 +5065,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4886,36 +5102,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4928,42 +5144,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4971,7 +5188,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4979,107 +5196,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5095,97 +5305,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5232,6 +5453,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5242,7 +5467,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5261,27 +5487,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5301,28 +5527,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5341,7 +5567,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5349,19 +5575,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5378,47 +5605,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/bg/translations.json b/locale/bg/translations.json index 9bb46875d6..e2edf9ecd3 100644 --- a/locale/bg/translations.json +++ b/locale/bg/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(няма тема)", + "(or )": "", "(you)": "(Вие)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Добави нова дума предупреждение", "Add all users": "", "Add another user...": "Добави друг потребител", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Добавяне на емотикон", "Add emoji reaction": "Добави емо реакция", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Добави нов поток по подразбиране", "Add new user group": "", "Add one or more users": "Добави един или повече потребители", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "Добави видео разговор", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Успешно добавяне!", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Всички", "All direct messages": "", + "All groups": "", "All messages": "Всички съобщения", "All messages including muted streams": "", "All streams": "Всички потоци", @@ -136,9 +142,11 @@ "Allow subdomains": "Позволи поддомейни", "Allowed domains": "Позволени домейни", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Винаги", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "Преди час", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Аватар от Gravatar", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "Ботове", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Затвори", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Съставете вашето съобщение тук", "Compose your message here...": "Съставете вашето съобщение тук...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Изтрий", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "Описание", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "Десктоп и мобилни приложения", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Изключен", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "Изтегли", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Редактирай съобщение", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Редактирай избраната чернова", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Редактирай последното съобщение", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "Външен линк", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Филтър потоци", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Първо съобщение", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "Общ", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Хора", "Idle": "Неактивен", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Стартирай търсене", "Insert new line": "Въведи нов ред", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Интеграция", "Interface": "", "Invalid URL": "Невалиден адрес", @@ -581,6 +614,8 @@ "Inviting...": "Разпращане покани...", "Italic": "", "January": "Януари", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "Последно активен", + "Last edited {last_edit_timestr}": "", "Last message": "Последно съобщение", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Изход", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Управление потоци", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Споменавания", - "Menu": "Меню", "Menus": "Менюта", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Премести тема", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Ограничи канал", "Mute this user": "", "Mute topic": "Заглуши тема", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "Ново съобщение в потока", + "New stream notifications": "", "New task": "", "New topic": "Нова тема", "New user announcements": "", + "New user notifications": "", "Next message": "Следващо съобщение", "Next unread direct message": "", "Next unread topic": "Следваща непрочетена тема", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Не, аз ще наваксам.", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "Октомври", "Old password": "Стара парола", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Отвори", "Open message menu": "Отвори меню инструменти", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "Предходно съобщение", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "Профил", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Записано като чернова", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Вижте как да конфигурирате е-поща.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Изпрати", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Регистрация", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "Обозначи избраното съобщение", @@ -1024,8 +1080,10 @@ "Subscribe": "Абонамент", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Абонирай се за/откажи от избрания поток", + "Subscribe {full_name} to streams": "", "Subscribed": "Абонирани", "Subscribed streams": "Абонаменти за потоци", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Днес", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Активирай меню инструменти", "Toggle topic mute": "Активирай подтискане на темата", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "Тема", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "ПОТРЕБИТЕЛИ", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Не заглушавай тема", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "Непрочетени", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Виж чернови", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Вие и", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Не сте абониран за този канал и никой още не е споменавал за това!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Вие получихте", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Не сте качили файлове.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Все още не са ви споменали!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "Вие написахте", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip трябва да изпрати съобщение чрез е-поща за потвърждение на адреса и изпращане на предупреждения.", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/bqi/LC_MESSAGES/django.po b/locale/bqi/LC_MESSAGES/django.po index 41b5bc3a5a..b7ca93b983 100644 --- a/locale/bqi/LC_MESSAGES/django.po +++ b/locale/bqi/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: hosêyn abāspanā , 2023\n" "Language-Team: Luri (Bakhtiari) (http://app.transifex.com/zulip/zulip/language/bqi/)\n" @@ -18,46 +18,47 @@ msgstr "" "Language: bqi\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "jaryānā poy volâti" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "jaryānā sixomi" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -118,29 +119,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -172,7 +175,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -188,14 +191,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -207,7 +210,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -257,7 +260,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "xatā mêni,mên sêrvêr" @@ -559,9 +562,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -579,9 +582,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -591,9 +594,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -856,51 +859,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "si sabtê nomêt mamnow dārêtim!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "him sako tafre raw." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -1148,6 +1151,159 @@ msgstr "mêntorā ma'muli" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1155,6 +1311,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1168,22 +1357,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1238,17 +1414,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1353,225 +1518,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "ra'ďên vê Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1656,14 +1602,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1695,21 +1641,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1717,21 +1687,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1774,29 +1744,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1959,6 +1929,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1987,6 +1965,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "ra'ďên vê Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2375,7 +2425,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2875,290 +2925,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "fildê nomê mêntori {id} nê najost." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "ālêštkâriyî nî" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "sāzêmov isā,ālêštê payum nê bîkênêš kerde" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "isā dasrasi si ālêštê i payumê nê nađârin" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "payom (ā) nazêbāl" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3174,8 +3227,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3194,18 +3247,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3214,38 +3281,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3255,56 +3322,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "dasrasi kâfi nađārin" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3319,94 +3389,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "razmê nu" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3471,31 +3547,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3528,166 +3604,166 @@ msgstr "zê zitar ya hêsāv mêntori dāre." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "jaryānê '{stream}' ê nê nîď" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "mêntor" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON êštêvā" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "kilitê API êštêvā" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "dasrasi ma'dud" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3695,6 +3771,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3736,7 +3820,7 @@ msgid "Settings" msgstr "sāmovā" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3749,264 +3833,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "lādêrâri muštiri" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "mâli" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "payum navā pati bu" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4021,669 +4113,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "nêšovêi nî" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "nom qalêve tulâni hêď!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "nom qalêve kutāl hêď!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "činow robāti nî" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "činow mêntori nî" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "dîvowdārê sāzêmow" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "mêntor" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "mîmow" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "poy volâti" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "êmuji sêfârêši" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "ling" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4751,66 +4932,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4818,22 +5032,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "fêšnāko pati hêď" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4849,26 +5064,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4885,36 +5101,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4927,42 +5143,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4970,7 +5187,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4978,107 +5195,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "jaryānā nu" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5094,97 +5304,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

fāylê nê najost.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "razm zêbāl nî!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5231,6 +5452,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5241,7 +5466,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5260,27 +5486,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5300,28 +5526,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "sartāl natare pati bu" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5340,7 +5566,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5348,19 +5574,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "payum zê êslak" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5377,47 +5604,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP êštêvā hêď" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/bqi/translations.json b/locale/bqi/translations.json index 7e1503b431..fa1962811a 100644 --- a/locale/bqi/translations.json +++ b/locale/bqi/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "poy", "All direct messages": "", + "All groups": "", "All messages": "poy payumā", "All messages including muted streams": "", "All streams": "poy jaryānā", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "robātā", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "bastên", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "lefgiri vâbi!", + "Copy URL": "", "Copy address": "", "Copy and close": "lefgiri vo bastên", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "sêfârêši", + "Custom URL": "", "Custom emoji": "êmuji sêfârêši", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "pāk kerdên", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "pāk kerdên fāyl", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "zê kār vandên", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "ālêštê payum", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "filtêrê mokêšā", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "filtêrê jaryānā", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "āďumiyal", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "šîvāt", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "ya jur kerdênā", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "bî dong kerdên jaryān", "Mute this user": "", "Mute topic": "bî dong kerdên sartāl", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "payumê jaryāni nu", + "New stream notifications": "", "New task": "", "New topic": "", "New user announcements": "", + "New user notifications": "", "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "bî pîš hîl", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "razmê pîši", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "sabtê nom", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "āstāre dār", "Star selected message": "", @@ -1024,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "mêntorā", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "amru", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "sova", "Tomorrow at {time}": "", "Topic": "sartāl", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "vā dong kerdên sartāl", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "niyaštênê fāyl", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/ca/LC_MESSAGES/django.po b/locale/ca/LC_MESSAGES/django.po index e5b4bff19a..32b44fed94 100644 --- a/locale/ca/LC_MESSAGES/django.po +++ b/locale/ca/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Gonçal Garcés, 2020-2021\n" "Language-Team: Catalan (http://app.transifex.com/zulip/zulip/language/ca/)\n" @@ -20,46 +20,47 @@ msgstr "" "Language: ca\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "No permès per a usuaris convidats" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organització no vàlida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Canals públics" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Canals privats" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Sense dades d'analytics. Parleu amb l'administrador." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -120,29 +121,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Alguna cosa ha fallat. Recarregueu la pàgina." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Alguna cosa ha fallat. Espereu uns segons i torneu a provar-ho." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -174,7 +177,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -190,14 +193,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -209,7 +212,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -259,7 +262,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Error intern del servidor" @@ -561,9 +564,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -581,9 +584,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -593,9 +596,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -858,51 +861,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Crea un compte amb %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Gràcies per registrar-vos." - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Missatges" @@ -1150,6 +1153,159 @@ msgstr "Usuaris normals" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Us donem la benvinguda a Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL de l'organització: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1157,6 +1313,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1170,22 +1359,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1240,17 +1416,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1355,225 +1520,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Us donem la benvinguda a Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL de l'organització: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1658,14 +1604,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1697,21 +1643,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1719,21 +1689,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1776,29 +1746,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Administra les preferències de correu electrònic:" @@ -1961,6 +1931,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1989,6 +1967,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2377,7 +2427,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2877,290 +2927,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3176,8 +3229,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3196,18 +3249,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3216,38 +3283,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3257,56 +3324,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3321,94 +3391,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3473,31 +3549,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3530,166 +3606,166 @@ msgstr "" msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "propietari d'organització" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Clau d'API no vàlida" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Clau d'API malformada" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3697,6 +3773,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3738,7 +3822,7 @@ msgid "Settings" msgstr "Configuració" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3751,264 +3835,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Atenció al client" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operador de filtratge no vàlid: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Hola, i benvingut/uda a Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4023,669 +4115,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Propietari d'organització" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrador d'organització" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membre" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Convidat" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Públic" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emojis personalitzats" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Enllaç" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4753,66 +4934,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "El camp personalitzat predeterminat no es pot actualitzar." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "L'historial d'edicions de missatge està desactivat en aquesta organització" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4820,22 +5034,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4851,26 +5066,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4887,36 +5103,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider {} no vàlid" - -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" + +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4929,42 +5145,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4972,7 +5189,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4980,107 +5197,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "canals nous" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5096,97 +5306,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "default_language no vàlida" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5233,6 +5454,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5243,7 +5468,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5262,27 +5488,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5302,28 +5528,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5342,7 +5568,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5350,19 +5576,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5379,47 +5606,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/ca/translations.json b/locale/ca/translations.json index adfb1340da..ab6dabc1a2 100644 --- a/locale/ca/translations.json +++ b/locale/ca/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(sense tema)", + "(or )": "", "(you)": "(tu)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Afegeix una alerta", "Add all users": "", "Add another user...": "Afegeix un altre usuari...", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Afegeix emojis", "Add emoji reaction": "Afegeix una reacció amb emoji", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "Afegeix un creador d'enllaços", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Afegeix un nou canal predeterminat", "Add new user group": "", "Add one or more users": "Afegiu un o més usuaris", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Afegeix tasca", "Add video call": "Afegeix trucada de vídeo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "Administrador", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Tots", "All direct messages": "", + "All groups": "", "All messages": "Tots els missatges", "All messages including muted streams": "Tots els missatges incloent-hi els canals silenciats", "All streams": "Tots els canals", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Sempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "Fa una hora", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Tancar", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Redacteu el missatge aquí", "Compose your message here...": "Redacteu el missatge aquí...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "Emojis personalitzats", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Desactivat", "Deactivated users": "Usuaris desactivats", "December": "Desembre", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Canals predeterminats", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Configuració d'usuari predeterminada", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Elimina", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Elimina l'esborrany", "Delete file": "Elimina el fitxer", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "Elimina el logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "Descripció", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "Aplicacions d'escriptori i mòbils", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Configuració de visualització", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Edita el missatge", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Edita l'esborrany seleccionat", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Edita el meu missatge més recent", "Edit your profile": "Edita el meu perfil", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "Enllaç extern", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "Filtra les invitacions", - "Filter languages": "Filtra les llengües", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filtra els canals", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Primer missatge", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Crea enllaç d'invitació", "Generate new API key": "Genera una nova clau API", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humans", "Idle": "Inactiu", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Inicia una cerca", "Insert new line": "Insereix una nova línia", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integracions", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "Convidant...", "Italic": "", "January": "Gener", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "Última connexió", + "Last edited {last_edit_timestr}": "", "Last message": "Últim missatge", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "Més informació", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Tanca la sessió", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Administra els canals", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Mencions", - "Menu": "Menú", "Menus": "Menús", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Mou el tema", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Silencia el canal", "Mute this user": "", "Mute topic": "Silencia el tema", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "Nou missatge al canal", + "New stream notifications": "", "New task": "Nova tasca", "New topic": "Tema nou", "New user announcements": "", + "New user notifications": "", "Next message": "Següent missatge", "Next unread direct message": "", "Next unread topic": "Següent tema no llegit", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "No hi ha esborranys", "No exports.": "", "No invites match your current filter.": "No hi ha cap invitació que s'ajuste al filtre actiu.", "No language set": "No s'ha establit una llengua", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "Sense propietari", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "La cerca no ha tornat resultats", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Novembre", + "Numbered list": "", "October": "Octubre", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "Obre el menú de missatges", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Prem > per a mostrar la llista de temes", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "Anterior missatge", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "Perfil", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Desat com a esborrany", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "Selecciona un canal", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Envia", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "Mostra el nombre de missatges destacats", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Mostra/modifica la meva clau API", "Sign up": "Crea un compte", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Ordena per trànsit setmanal estimat", "Sort by name": "Ordena per nom", "Sort by number of subscribers": "Ordena per nombre de subscriptors", + "Sort by unread message count": "", "Spoiler": "", "Star": "Destaca", "Star selected message": "Destaca el missatge seleccionat", @@ -1024,8 +1080,10 @@ "Subscribe": "Subscriu-me", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Subscriure's/donar-se de baixa del canal seleccionat", + "Subscribe {full_name} to streams": "", "Subscribed": "Subscrit", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "Nombre de subscriptors", "Subscribers": "Subscriptors", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Avui", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Commuta la subscripció", "Toggle the gear menu": "Mostra/amaga el menú d'eines", "Toggle topic mute": "Silencia/no silencies el tema", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "Tema", "Topic muted": "S'ha silenciat el tema", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "USUARIS", "Uncheck all": "Desmarca-ho tot", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "No silencies el tema", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "No fixes el canal dalt de tot", "Unread": "No llegits", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Mostra els esborranys", - "View edit history": "Mostra l'historial d'edicions", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "No esteu subscrits a aquest canal i ningú ha parlat encara d'això!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Aconseguireu açò:", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "Si teclegeu açò:", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "La vostra clau API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "més temes", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/cs/LC_MESSAGES/django.po b/locale/cs/LC_MESSAGES/django.po index 1ef6f179c9..be4d3b9636 100644 --- a/locale/cs/LC_MESSAGES/django.po +++ b/locale/cs/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: fri, 2017-2023\n" "Language-Team: Czech (http://app.transifex.com/zulip/zulip/language/cs/)\n" @@ -24,46 +24,47 @@ msgstr "" "Language: cs\n" "Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Není povoleno pro hosty" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Neplatná organizace" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Veřejné kanály" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Soukromé kanály" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Přímé zprávy" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Seskupit přímé zprávy" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Neznámý název grafu: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Čas začátku je později než čas konce. Začátek: {start}, konec: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Žádná analytická data nejsou k dispozici. Spojte se, prosím, se správcem serveru." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Neplatné parametry" @@ -124,29 +125,31 @@ msgid "" msgstr "Vaše organizace nemá dostatečný počet volných Zulip licencí pro pozvání {num_invites} nových uživatelů." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Musíte vystavit fakturu pro alespoň {} uživatelů." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Účty s více než {} licencemi nelze zpracovat z této stránky. Pro dokončení povýšení se, prosím, spojte s {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Nastala chyba. Spojte se, prosím, s {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Něco se nepodařilo. Načtěte prosím stránku znovu." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Něco se nepodařilo. Počkejte prosím několik sekund a zkuste to znovu." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -178,7 +181,7 @@ msgstr "Aktualizace platebního plánu se nezdařila. Plán již vypršel a byl msgid "Unable to update the plan. The plan has ended." msgstr "Aktualizace platebního plánu se nezdařila. Plán již byl ukončen." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -194,14 +197,14 @@ msgstr "Váš aktuální platební plán již využívá {licenses} licencí v a msgid "You cannot decrease the licenses in the current billing period." msgstr "Nelze snížit počet licencí v aktuálním zúčtovacím období." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Váš platební plán je již nastaven aby v dalším zúčtovacím období obnovil {licenses_at_next_renewal} licencí." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Není co měnit." @@ -213,7 +216,7 @@ msgstr "Pro tuto organizaci neexistuje žádný zákazník!" msgid "Session not found" msgstr "Relace nebyla nalezena" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Musí být správcem plateb nebo vlastníkem organizace" @@ -263,7 +266,7 @@ msgid "" msgstr "\n Pokud je tato chyba neočekávaná, můžete\n se spojit s podporou.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Vnitřní chyba serveru" @@ -305,7 +308,7 @@ msgid "" " If you administer this server, you may want to check out the\n" " Zulip server troubleshooting guide.\n" " " -msgstr "" +msgstr "\n Pokud tento server spravujete, můžete se podívat do\n průvodce řešením potíží serveru Zulip.\n " #: templates/analytics/stats.html:6 #, python-format @@ -565,9 +568,9 @@ msgstr "Stav vyúčtování" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -585,9 +588,9 @@ msgstr "Zobrazit ceny" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Vlastní hostování Zulipu" @@ -597,9 +600,9 @@ msgstr "Vlastní hostování Zulipu" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Požádejte o sponzorství" @@ -862,51 +865,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Přihlásit se pomocí %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Potvrďte svoji adresu elektronické pošty" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Děkujeme vám za registraci!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Zkontrolujte svůj e-mail (%(email)s), abychom mohli začít." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "E-mail nedorazil? Můžeme ho poslat znovu." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Radši zkontrolujte složku Spam." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Pokud tato zpráva neodchází, zkuste stránku nahrát znovu." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Nelze se připojit k Zulipu." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Aktualizace mohou být zpožděny." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Brzy to zkusíme znovu..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Zkuste to nyní." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Zprávy" @@ -927,7 +930,7 @@ msgid "" " you probably got the address wrong. If you got stuck here while trying\n" " to log in, this is most likely a server bug or misconfiguration.\n" " " -msgstr "" +msgstr "\n Zdá se, že jste se zde ocitl náhodou. Tato stránka\nje určena jako mezikrok v procesu ověřování.\n a neměla by být přístupná ručně. Pokud jste sem přišli přímo,\npravděpodobně jste si spletli adresu. Pokud jste zde uvízli při pokusu\n o přihlášení, jedná se pravděpodobně o chybu serveru nebo chybné nastavení.\n " #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 @@ -948,17 +951,17 @@ msgstr "Zavřít okno" msgid "" "Zulip lets you control which roles in the organization can view your email " "address." -msgstr "" +msgstr "Zulip umožňuje řídit, které role v organizaci mohou zobrazit vaši e-mailovou adresu." #: templates/zerver/change_email_address_visibility_modal.html:13 msgid "" "Do you want to change the privacy setting for your email from the default " "configuration for this organization?" -msgstr "" +msgstr "Chcete změnit nastavení soukromí vašeho e-mailu oproti výchozímu nastavení pro tuto organizaci?" #: templates/zerver/change_email_address_visibility_modal.html:15 msgid "Who can access your email address" -msgstr "" +msgstr "Kdo může přistupovat k vaší adrese elektronické pošty" #: templates/zerver/change_email_address_visibility_modal.html:22 #, python-format @@ -966,7 +969,7 @@ msgid "" "You can also change this setting after you join." -msgstr "" +msgstr "Toto nastavení můžete také změnit poté, co se připojíte." #: templates/zerver/change_email_address_visibility_modal.html:26 msgid "Cancel" @@ -1152,8 +1155,161 @@ msgstr "Normální uživatelé" #: templates/zerver/digest_base.html:5 msgid "Digest" +msgstr "Přehled" + +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " msgstr "" +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Vítejte v Zulipu!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Adresa organizace: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Vaše uživatelské jméno: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Pro přihlášení použijte váš LDAP účet" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "Váš e-mailový účet: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Přejít na organizaci" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s na Zulipu: podrobnosti o vaší nové organizaci" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s na Zulipu: podrobnosti o vašem novém účtu" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr " Vytvořili jste ukázkovou organizaci Zulip. Upozorňujeme, že tato organizace bude automaticky smazána za 30 dní. Zjistěte více o ukázkových organizacích zde: %(demo_organizations_help_link)s!" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Připojil/a jste se k organizaci na Zulipu %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "V případě jakýchkoli dotazů se obraťte na správce tohoto serveru Zulip na %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1161,6 +1317,39 @@ msgstr "" msgid "Hi," msgstr "Ahoj," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Pokud jste tuto změnu neiniciovali, neprodleně se s námi spojte na%(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Pokud jste nedali podnět k této změně, neprodleně se s námi spojte na <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1174,23 +1363,10 @@ msgstr "Obdrželi jsme požadavek na změnu vaší e-mailové adresy pro Zulip msgid "Confirm email change" msgstr "Potvrdit změnu e-mailu" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Pokud jste tuto změnu neiniciovali, neprodleně se s námi spojte na%(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Ověřte vaši novou e-mailovou adresu" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Pokud jste nedali podnět k této změně, neprodleně se s námi spojte na <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1244,17 +1420,6 @@ msgid "" "— we'd love to help!" msgstr "Máte dotazy nebo připomínky? Spojte se s námi na adrese %(support_email)s — rádi vám pomůžeme!" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "V případě jakýchkoli dotazů se obraťte na správce tohoto serveru Zulip na %(support_email)s." - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1359,225 +1524,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Vaše e-mailová adresa %(email)s má účty u následujících organizací Zulipu hostovaných %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Vítejte v Zulipu!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Adresa organizace: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Vaše uživatelské jméno: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Pro přihlášení použijte váš LDAP účet" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "Váš e-mailový účet: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Přejít na organizaci" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "Otázky? Spojte se s námi — rádi vám pomůžeme!" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s na Zulipu: podrobnosti o vaší nové organizaci" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s na Zulipu: podrobnosti o vašem novém účtu" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr " Vytvořili jste ukázkovou organizaci Zulip. Upozorňujeme, že tato organizace bude automaticky smazána za 30 dní. Zjistěte více o ukázkových organizacích zde: %(demo_organizations_help_link)s!" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Připojil/a jste se k organizaci na Zulipu %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Příklady krátkých témat" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Jít na Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1662,14 +1608,14 @@ msgstr "Toto pozvání vyprší za dva dny. Pokud pozvání vyprší, musíte po #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1701,21 +1647,45 @@ msgid "" msgstr "Toto jste dostal, protože @%(mentioned_user_group_name)s byl zmíněn." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Dostáváte ji, protože všichni byli zmíněni v #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "oto jste dostal, protože máte povoleno oznámení elektronickou poštou pro #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1723,21 +1693,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1780,29 +1750,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nTento elektronický dopis nezahrnuje obsah zprávy, protože jste zakázal objevování se obsahu zpráv v oznámeních elektronickou poštou.\nNa další podrobnosti se podívejte v %(alert_notif_url)s.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Odpovědět na tento elektronický dopis přímo, nebo jej zobrazit v %(realm_name)s Zulipu:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Zobrazit nebo odpovědět v %(realm_name)s Zulipu:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Odpovědět v %(realm_name)s Zulipu:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nNeodpovídejte na tento elektronický dopis. Tento server Zulipu není nastaven na přijímání příchozí elektronické pošty. Nápověda:\n\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Spravovat nastavení elektronické pošty:" @@ -1965,6 +1935,14 @@ msgstr "Zobrazit průvodce Zulipem pro neziskové organizace" msgid "View Zulip guide for communities" msgstr "Zobrazit průvodce Zulipem pro společenství" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Průvodce Zulipem pro podniky" @@ -1993,6 +1971,78 @@ msgstr "Průvodce Zulipem pro neziskové organizace" msgid "Zulip guide for communities" msgstr "Průvodce Zulipem pro společenství" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Příklady krátkých témat" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Jít na Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2381,7 +2431,7 @@ msgid "Incoming webhooks" msgstr "Příchozí zpětná volání HTTP" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interaktivní roboti" @@ -2568,7 +2618,7 @@ msgstr "Můžete to zkusit znovu za %(retry_after)s sekund." #: templates/zerver/realm_creation_disabled.html:4 #: templates/zerver/realm_creation_disabled.html:13 msgid "Organization creation link required" -msgstr "" +msgstr "Požadován odkaz na vytvoření organizace" #: templates/zerver/realm_creation_disabled.html:15 msgid "" @@ -2605,7 +2655,7 @@ msgstr "Použít %(external_host)s" #: templates/zerver/realm_creation_link_invalid.html:4 #: templates/zerver/realm_creation_link_invalid.html:14 msgid "Organization creation link expired or invalid" -msgstr "" +msgstr "Odkaz na vytvoření organizace vypršel nebo není platný" #: templates/zerver/realm_creation_link_invalid.html:16 msgid "" @@ -2661,7 +2711,7 @@ msgstr "Vytvořit novou organizaci." #: templates/zerver/register.html:5 msgid "Registration" -msgstr "" +msgstr "Registrace" #: templates/zerver/register.html:21 msgid "Create your organization" @@ -2676,11 +2726,11 @@ msgid "" "\n" "

Enter your account details to complete registration.

\n" " " -msgstr "" +msgstr "\n

Zadejte údaje o svém účtu a dokončete registraci.

\n " #: templates/zerver/register.html:36 msgid "Your organization" -msgstr "" +msgstr "Vaše organizace" #: templates/zerver/register.html:66 msgid "Your account" @@ -2732,7 +2782,7 @@ msgstr "Nastavit heslo znovu" msgid "" "Forgot your password? No problem, we'll send a link to reset your password " "to the email you signed up with." -msgstr "" +msgstr "Zapomněli jste heslo? Žádný problém, zašleme vám odkaz pro obnovení hesla na e-mail, který jste uvedli při registraci." #: templates/zerver/reset.html:34 msgid "Send reset link" @@ -2740,7 +2790,7 @@ msgstr "Odeslat odkaz na reset hesla" #: templates/zerver/reset_confirm.html:5 msgid "Set a new password" -msgstr "" +msgstr "Nastavte nové heslo" #: templates/zerver/reset_confirm.html:15 msgid "Set a new password." @@ -2881,292 +2931,295 @@ msgid "" " " msgstr "\n Také můžete použít program pro plochu Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "přihlášení" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} se právě přihlásil k Zulipu. (celkem: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} přijal vaše pozvání, aby se připojil k Zulipu!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Chybný \"mapping\" pořadí." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Pole s id {id} nebylo nalezeno." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Neplatný výchozí název skupiny kanálu '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Výchozí název skupiny kanálu je příliš dlouhý (nejvíce: {} znaků)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Výchozí název skupiny kanálu '{}' obsahuje znaky NULL (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Neplatná výchozí skupina kanálu {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' je výchozí kanál a nelze ho přidat do '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Výchozí skupina kanálu '{group_name}' již existuje" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Kanál '{stream_name}' je již ve výchozí skupině kanálu přítomen '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Kanál '{stream_name}' není ve výchozí skupině kanálu přítomen '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Tato výchozí skupina kanálu je již pojmenována '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Výchozí skupina kanálu '{}' již existuje" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Kvůli ochraně uživatelů omezuje Zulip počet pozvánek, které můžete poslat za jeden den. Protože jste dosáhli meze, nebyly odeslány žádné pozvánky." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Váš účet je zatím příliš čerstvý a odesílání pozvánek jménem této organizace vám pro tuto chvíli není povoleno. Poproste správce organizace, nebo nějakého zkušenějšího uživatele." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Platnost některých e-mailů se nepodařilo ověřit a proto jsme raději žádné pozvánky neposlali." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Nepodařilo se nám pozvat nikoho." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Některé z těchto adres již Zulip používají, takže jsme jim pozvánku znovu neposílali. Odeslali jsme ji ale všem ostatním!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nic k upravení" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Neplatný propagate_mode bez úpravy tématu" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Nelze měnit obsah zprávy během změny kanálu" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Grafické součásti nelze upravovat." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} označil toto téma jako vyřešené." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} označil toto téma jako nevyřešené." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Toto téma sem bylo přesunuto {user} do {new_location}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Zpráva byla {user} přesunuta z tohoto tématu do {new_location}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} zpráv bylo {user} přesunuto z tohoto tématu do {new_location}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Toto téma sem bylo přesunuto {user} z {old_location}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} zpráv sem bylo {user} přesunuto z {old_location}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Vaše organizace vypnula upravy zpráv" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Nemáte oprávnění k upravení této zprávy" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Časová lhůta pro upravení této zprávy vypršela" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Nemáte oprávnění používat v tomto kanálu zmínky se zástupnými znaky." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Nemáte oprávnění k přesunutí této zprávy" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Nemáte oprávnění k přesunutí této zprávy z důvodu chybějícího přístupu k jejímu kanálu" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Neplatný příznak: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Přiznak není upravitelný: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Neplatná operace s příznakem zprávy: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Neplatná zpráva/y" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Nelze zpracovat zprávu" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Očekáván přesně jeden kanál" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Neplatný datový typ pro kanál" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Neplatný datový typ pro příjemce" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Seznamy příjemců mohou obsahovat adresy nebo uživatelská ID, ale ne obojí." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Robot {bot_identity} se pokusil poslat zprávu kanálu s ID {stream_id}, ale žádný takový kanál neexistuje." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Robot {bot_identity} se pokusil poslat zprávu kanálu {stream_name}, ale tento kanál neexistuje. Klepněte [zde]({new_stream_link}) pro jeho vytvoření." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Robot {bot_identity} se pokusil poslat zprávu kanálu {stream_name}. ento kanál existuje. Nemá však žádné odběratele." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Témata jsou v této organizaci povinná" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "\"Widgety\": programátor API odeslal neplatný JSON" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Součástky: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reakce již existuje." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Vlastní obrázeček s tímto názvem již existuje." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3180,8 +3233,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3200,18 +3253,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} změnil [přístupová oprávnění](/help/stream-permissions) k tomuto kanálu z **{old_policy}** na **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3220,38 +3287,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} změnil [odesílací oprávnění](/help/stream-sending-policy) pro tento kanál:\n\n* **Stará oprávnění**: {old_policy}.\n* **Nová oprávnění**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} přejmenoval/a kanál {old_stream_name} na {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Žádný popis." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} změnil popis tohoto kanálu." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Starý popis." -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Nový popis" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Navždy" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Zprávy v tomto kanálu nyní budou uchovány navždy." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3261,56 +3328,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "K této zprávě nelze připojit dílčí zprávu." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Neplatné ID uživatele {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Skupina uživatelů '{}' již existuje." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Toto API není dostupné pro roboty využívající příchozí \"webhooky\"." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Účet není spojen s subdoménou" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Tento \"endpoint\" nepřijímá požadavky robotů." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Musí být správce serveru" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Nedostatečná oprávnění" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Tento \"endpoint\" vyžaduje HTTP základní autentizaci." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Neplatná autorizační hlavička pro \"basic auth\"" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Chybějící autorizační hlavička pro \"basic auth\"" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "\"Webhook\" roboti můžou používat pouze \"webhooky\"" @@ -3325,95 +3395,101 @@ msgstr "Váš účet {username} byl vypnut. Chcete-li jej znovu zapnout, spojte msgid "The password is too weak." msgstr "Heslo je příliš slabé" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomény musí mít délku 3 nebo větší." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomény nemohou začínat nebo končit na '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdoména může obsahovat jen malá písmena, čísla a '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdoména je nedostupná. Vyberte prosím jinou." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Použijte prosím váš skutečný e-mail." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Organizace, ke které se pokoušíte pomocí {email} připojit, neexistuje." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Vyžádejte si, prosím, pozvánku pro {email} od správce organizace." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Váš e-mail {email} není součástí ani jedné domény, které jsou pro tuto organizaci povoleny." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "E-mailové adresy obsahující + nejsou pro tuto organizaci povoleny." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Noví členové se nemohou připojit k této organizaci, protože všechny licence Zulip jsou používány. Spojte se, prosím, s osobou, která\nvás pozvala, a požádejte ji, aby zvýšila počet licencí, pak to zkuste znovu.\n " -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nové heslo" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Potvrzení nového hesla" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Provádíte příliš mnoho pokusů o přihlášení. Zkuste to znovu za {} sekund nebo požádejte o pomoc správce vaší organizace." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Vaše heslo bylo vypnuto, protože je příliš slabé. Chcete-li vytvořit nové, zadejte své heslo znovu." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Elektronický klíč" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Zadejte prosím maximálně 10 e-mailů." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Tuhle organizaci se nám na Zulipu nepodařilo najít." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Neplatný e-mail '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3477,31 +3553,31 @@ msgstr "Subdomény nemohou začínat nebo končit na '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Doména může obsahovat jen malá písmena, čísla, '.' a '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Časové razítko nesmí být záporné." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Téma nesmí obsahovat nulové bajty" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "U zpráv v kanálu je třeba zadat přesně 1 ID kanálu" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Uživatel vypnul synchronizaci konceptů." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Návrh neexistuje" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Otevřít Zulip a nechat si vyzradit obsah" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Oznámení Zulipu" @@ -3534,166 +3610,166 @@ msgstr "Již má účet." msgid "Account has been deactivated." msgstr "Účet byl vypnut." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Obrázeček '{}' neexistuje" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Neplatný vlastní obrázeček." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Neplatný název vlastního obrázečku." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Tento vlastní obrázeček byl vypnut." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Neplatný kód obrázečku." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Neplatný název obrázečku." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Neplatný typ obrázečku." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Musí být správcem organizace nebo tvůrcem obrázečku" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Chybí název obrázečku" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Nepodařilo se přidělit event queue" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Nepřihlášen: API autentikace nebo uživatelská session je vyžadována" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Kanál '{stream}' neexistuje" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Kanál s ID '{stream_id}' neexistuje" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Vlastník organizace" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "uživatel" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Nelze vypnout jedinou {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Neplatný markdownový include: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Používání API překročilo rychlostní omezení" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Nevalidní JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Musí být členem organizace" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Musí být správcem organizace" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Musí být vlastníkem organizace" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Vaše uživatelské jméno nebo heslo není správné" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Účet je vypnut" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Tato organizace byla vypnuta" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Registrace oznámení po telefonu pro váš server byla vypnuta" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Přihlašování pomocí hesla je v této organizaci vypnuto" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Vaše heslo bylo vypnuto a je třeba je zadat znovu" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Neplatný API klíč" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Špatný API klíč" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Událost '{event_type}' není nyní podporována zpětným voláním HTTP, webhookem {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Požadavek nelze zpracovat: Vytvořil {webhook_name} tuto událost?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Neplatná subdoména" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Přístup odepřen" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3701,6 +3777,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reakce již existuje." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Odpověď neexistuje." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3742,8 +3826,8 @@ msgid "Settings" msgstr "Nastavení" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Jděte do Nastavení pro nastavení vašich oznámení a nastavení zobrazení." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3755,264 +3839,272 @@ msgid "" "and give it a go!" msgstr "Klepněte zde pro zahájení nové konverzace. Vyberte si téma (nejlepší jsou 2-3 slova) a vyzkoušejte si to!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Frameworky integrací" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Nepřetržitá integrace" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Zákaznická podpora" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Nasazování" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Zábava" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Komunikace" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finance" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Různé" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Správa projektu" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produktivita" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Verzování" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Zpráva nesmí být prázdná" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Zpráva nesmí obsahovat nulové bajty" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operátor {} není podporován." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Neplatný zužující operátor: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Chybí argument 'anchor'" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Neplatná kotva" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Ahoj, vítejte v Zulipu!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Zde je několik zpráv, co chápu:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "V Zulipu kanály [určují, kdo dostane zprávu](/help/streams-and-topics). Jsou podobné kanálům v jiných aplikacích poskytujících možnost hovoru." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Toto je soukromý kanál, jak ukazuje obrázek zámku vedle názvu kanálu." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Soukromé kanály jsou viditelné jen pro členy kanálů." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Kvůli správě tohoto kanálu jděte do [nastavení kanálu]({stream_settings_url}) a klepněte na `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Toto je zpráva na kanálu #**{default_notification_stream_name}** s tématem `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Témata jsou snadným nástrojem pro udržení pořádku v rozhovorech." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "O tématech se více dozvíte v [kanály a témata]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Toto je zpráva na kanálu #**{default_notification_stream_name}** s tématem `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4027,669 +4119,758 @@ msgstr "Neplatný JSON v odpovědi" msgid "Invalid response format" msgstr "Neplatný formát odpovědi" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Neplatná volba GCM pro \"bouncer\": přednost {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Neplatné volby GCM pro \"bouncer\": {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Elektronický klíč neexistuje" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Tato organizace zakázala zahrnutí obsahu zpráv do oznámení po telefonu" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} označil/a @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} vás zmínil:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} zmínil všechny:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Uživatel není oprávněn položit tento dotaz" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' už Zulip nepoužívá." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Chyba \"bounceru push\" oznámení: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Nelze se rozhodnout mezi argumenty '{var_name1}' a '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Chybí argument '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Špatná hodnota pro '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Poškozené užitečné zatížení" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argument \"{}\" není platný JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Bezpečnost účtu Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Do tohoto kanálu mohou přidávat zprávy pouze správci organizace." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Do tohoto kanálu mohou přidávat zprávy pouze správci a rozhodčí organizace." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Hosté nemohou posílat do této skupiny." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Noví členové nemohou posílat do této skupiny." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Nejste oprávněn přidávat zprávy do kanálu '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Prosím zadejte 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Zvolte, prosím, jedno z: 'stream' nebo 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Neplatné ID kanálu" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Název kanálu '{}' je již použit." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Neplatný název kanálu '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Kanál(y) ({}) neexistuje(í)" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Internetové veřejné kanály nejsou povoleny." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Výchozí skupina kanálu s ID '{}' neexistuje." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Název kanálu nesmí být prázdný!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Název kanálu je příliš dlouhý (nejvíce: {} znaků)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Neplatný znak v názvu kanálu v poloze {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Téma nemůže být prázdné!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Neplatný znak v tématu v poloze {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Údaje o odběrech nejsou pro tento kanál dostupné" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Nepodařilo se získat odběratele soukromého kanálu" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} není boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} není datum" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} není slovník" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} není číslo s desetinnou čárkou" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} je moc malý" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} není celé číslo" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} je moc velký" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} není seznam" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Neplatný {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} je příliš dlouhé (maximálně {max_length} znaků)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} není řetězec" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Nahrání souboru by překročilo kvótu, kterou má vaše organizace nastavenou." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Nelze dekódovat obrázek; opravdu jste nahráli soubor s obrázkem?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Obrázek překračuje dovolené limity." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Poškozený animovaný obrázek." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Neznámý formát animovaného obrázku." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Neplatná skupina uživatele" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Název je příliš dlouhý!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Název je příliš krátký!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Neplatné znaky v názvu!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Neplatný formát!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Tento název je již používán!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Špatný název nebo uživatelské jméno" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Neplatná integrace '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Chybějící parametry nastavení: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Neplatná {} hodnota {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Neplatné nastavení!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Neplatný typ robota" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Neplatný typ rozhraní" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Neplatné ID uživatele: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Žádný takový robot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Žádný takový uživatel" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Uživatel je vypnut" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} není řetězec" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} nemůže být prázdné." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Neplatný {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} je příliš dlouhé (maximálně {max_length} znaků)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} má nesprávnou délku {length}; mělo by být {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} není datum" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} není celé číslo" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} je moc malý" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} je moc velký" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} není číslo s desetinnou čárkou" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} není boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} není platný hex kód barvy" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} není seznam" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} má mít přesně {length} položek" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} není slovník" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} klíč chybí v {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Neočekávané argumenty: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} není allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} je chybná)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} není adresa (URL)" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' nemůže být prázdné." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' je neplatná možnost pro pole '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} není řetězec nebo seznam celých čísel" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} není řetězec nebo celé číslo" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} nemá délku" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} chybí" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Chybí HTTP hlavička události '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr " {} zpětné volání HTTP, webhook, očekává čas v milisekundách." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Zcommand by měl začínat znakem '/'." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Neexistující příkaz: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Chyba CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "Události kanálu" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Dostupné v serveru Zulip Standard. Pro přístup povyšte." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Neplatné znaky v názvu obrázečku" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Špatný regulární výraz: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Neznámá chyba regulárního výrazu" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Neplatné znaky v jazyce segmentů" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Správci, moderátoři, členové a hosté" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Správci, moderátoři a členové" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Správci a moderátoři" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Pouze správci" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nikdo" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Vlastník organizace" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Správce organizace" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderátor" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Člen" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Host" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Internetový veřejný" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Veřejné" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Soukromá, sdílená historie" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Soukromá, chráněná historie" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Veřejná, chráněná historie" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Všichni členové kanálu mohou přidávat zprávy" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Pouze správci organizace mohou přidávat zprávy" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Zprávy mohou přidávat pouze správci a moderátoři organizace." -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Pouze členové organizace mohou přidávat zprávy." -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode obrázeček" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Vlastní obrázeček" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Další obrázeček Zulipu" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Uživatel s ID {} je vypnut" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Uživatel s ID {} je robot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Seznam možností" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Výběr osoby" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Krátký text" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Dlouhý text" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Výběr data" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Odkaz" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Vnější účet" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Zájmena" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Neznámá IP adresa" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "neznámý operační systém" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Neznámý prohlížeč" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Chybí argument 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Chybí argument 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Událost novější než {event_id} již byla ořezána!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Událost {event_id} nebyla v této řadě" @@ -4757,89 +4938,123 @@ msgstr "Pole s tímto štítkem již existuje." msgid "Default custom field cannot be updated." msgstr "Výchozí uživatelské pole nelze aktualizovat." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Koncový bod není v produkci dostupný." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "Vývojářská autentizační podpůrná vrstva není zapnuta." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Neznámý aktivní bod: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Musíte zadat alespoň jednu adresu elektronické pošty." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Kanál s ID {} neexistuje. Žádné pozvánky nebyly odeslány." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Žádné taková pozvánka" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Historie úprav zprávy je v této organizaci vypnuta" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Nemáte oprávnění smazat tuto zprávu" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Časová lhůta pro smazání této zprávy vypršela" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Tato zpráva je již smazaná" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Vyžádáno příliš mnoho zpráv (nejvíce je {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Takové téma '{}' není" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Chybí odesílatel" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Zrcadlení není povoleno společně s uživatelskými ID příjemců" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Neplatná zrcadlená zpráva" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zrcadlení Zephyru není v této organizaci povoleno." @@ -4855,27 +5070,28 @@ msgstr "Uživatel již ztlumen" msgid "User is not muted" msgstr "Uživatel není ztlumen" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Zobrazení přítomnosti není podporováno pro robotické uživatele." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Žádné údaje o přítomnosti pro {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Klient neposlal žádné nové hodnoty." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Klient musí předat emoji_name, pokud předají buď emoji_code , nebo reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Neplatný stav: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4891,37 +5107,37 @@ msgid "" "emoji_code" msgstr "Alespoň jedno z následujících musí být uvedeno: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Odpověď neexistuje." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Neplatný jazyk '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Alespoň jedna metoda autentizace musí být povolena." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Neplatný video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Neplatné giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Musí to být ukázková organizace." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Neplatná doména: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4933,42 +5149,43 @@ msgstr "Doména {domain} je již součástí vaší organizace." msgid "No entry found for domain {domain}." msgstr "Nebyl nalezen žádný záznam pro doménu {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Musíte nahrát přesně jeden soubor." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Nahraný soubor je větší než nastavené omezení {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Překročeno rychlostní omezení." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Požádejte, prosím, o ruční vyvedení z {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Neplatné ID uložení dat" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Uložená data již byla smazána" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4976,7 +5193,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Musíte nahrát přesně jednu ikonu." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Tvůrce odkazů nenalezen" @@ -4984,107 +5201,100 @@ msgstr "Tvůrce odkazů nenalezen" msgid "You must upload exactly one logo." msgstr "Musíte nahrát právě jedno logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Neplatné hřiště" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Uživatel není oprávněn spouštět dotazy jménem '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Soukromé kanály nelze nastavit jako výchozí." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Je třeba nastavit \"new_description\" nebo \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Neplatná hodnota pro \"op\". Nastavte buď \"add\" nebo \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Výchozí kanály nelze nastavit jako soukromé." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Kanál už se takto jmenuje!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nic k provedení. Zadejte aspoň jedno z \"add\" nebo \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} vás přidal/a do kanálu {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} vás přidal/a do následujících kanálů:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Nelze přistupovat ke kanálu ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Další uživatele, kteří jsou zrcadleni pomocí Zephyru, můžete zvát pouze do soukromých kanálů." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} vytvořil následující kanály: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} vytvořil nový kanál {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "Nové kanály" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** kanál vytvořen {user_name}. **Popis:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Neznámá vlastnost odběru: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Odběr kanálu s ID {} není nastaven" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Neplatný JSON pro podzprávu" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Nejste oprávněn zobrazit tento soubor.

" @@ -5100,97 +5310,108 @@ msgstr "Uživatel pro zprávy kanálů vypnul upozornění na psaní" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Soubor nenalezen.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Neplatný elektronický klíč" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Neplatný název souboru" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Musíte zvolit soubor k nahrání" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Najednou můžete nahrát pouze jeden soubor" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Neposkytnuta žádná nová data" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Uživatel {user_id} již je členem této skupiny" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Tato uživatelská skupina neobsahuje člena '{}'" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Změny avatarů jsou v této organizaci zakázány." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Změny e-mailu jsou v této organizaci zakázány." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Neplatný default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Neplatný zvuk oznámení '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Neplatné období pro dávkové zpracování e-mailů: {} sekund" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Vaše heslo pro Zulip je spravováno v LDAPu" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Chybné heslo!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Děláte příliš mnoho pokusů! Zkuste to znovu za {} sekund." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Nové heslo je příliš slabé!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Musíte nahrát právě jeden obrázek avatara." @@ -5237,6 +5458,10 @@ msgstr "Neplatný název přidaného robota." msgid "Username already in use" msgstr "Uživatelské jméno se již používá" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5247,8 +5472,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Jednorázové e-maily nejsou v této organizaci povoleny" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Adresa elektronické pošty '{}' se již používá" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5266,27 +5492,27 @@ msgstr "Neplatný identifikátor sezení Zoom" msgid "Invalid Zoom credentials" msgstr "Neplatné přihlašovací údaje Zoom" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Nepodařilo se vytvořit hovor Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "Server BigBlueButton - Velké modré tlačítko, není nastaven." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Neplatný podpis." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Chyba při připojování se k serveru BigBlueButton - Velké modré tlačítko." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Chyba při přihlašování k serveru BigBlueButton - Velké modré tlačítko." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Server BigBlueButton - Velké modré tlačítko, vrátil neočekávanou chybu." @@ -5306,28 +5532,28 @@ msgstr "Neplatná vyrovnávací paměť Kerberos" msgid "We were unable to set up mirroring for you" msgstr "Nejsme pro vás schopni nastavit zrcadlení" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Neplatné užitečné zatížení" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Neznámý požadavek na zpětné volání HTTP, \"webhook request\"" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Téma nemůže být prázdné" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Obsah nemůže být prázdný" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Neplatný JSON vstup" @@ -5346,7 +5572,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5354,19 +5580,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Nelze obsloužit \"stěžejní užitečné zatížení\"" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Chyba: parametr channels_map_to_topics je jiný než 0 nebo 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Zpráva ze Slacku" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Neznámá akce WordPress \"webhooku\": {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5383,47 +5610,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Musí se prokázat platným Zulip server API klíčem" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Neplatné UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Neplatný typ elektronického klíče" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} není platný název serveru" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Chybí uživatelské_id nebo user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Neplatná vlastnost {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Data nemají správné pořadí." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Neplatná data." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Musíte si znovu nastavit heslo." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Chybějící parametr id_token" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Neplatný OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Dohromady nelze použít jak mobile_flow_otp tak desktop_flow_otp." diff --git a/locale/cs/translations.json b/locale/cs/translations.json index d52579e68f..cd52ce49cf 100644 --- a/locale/cs/translations.json +++ b/locale/cs/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(skryto)", "(no description)": "(žádný popis)", "(no topic)": "(žádné téma)", + "(or )": "", "(you)": "(vy)", "({message_retention_days} days)": "({message_retention_days} dní)", "/dark (Switch to the dark theme)": "/dark (přepnout do tmavého vzhledu)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} neodebírá tento kanál. Nebude upozorněn pokud odběr nenastavíte.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} má {number_of_invites_by_user} nevypršených pozvánek.", "Subscribe": "Odebírat", - "Click here to learn about exporting private streams and messages.": "Klepněte sem a naučte se, jak ukládat soukromé kanály a zprávy.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Povýšit kvůli více místa.", " to add a new line": " pro přidání nového řádku", " to send": " pro odeslání", @@ -82,15 +83,18 @@ "Add alert word": "Přidat sledované slovo", "Add all users": "Přidat všechny uživatelé", "Add another user...": "Přidat dalšího uživatele...", + "Add audio call": "", "Add code playground": "Přidat hřiště s kódem", + "Add default streams": "", + "Add email": "", "Add emoji": "Přidat obrázeček", "Add emoji reaction": "Přidat odpověď pomocí obrázečku", "Add extra emoji for members of the {realm_name} organization.": "Přidat další obrázeček pro členy organizace {realm_name}.", "Add global time": "Přidat celosvětový čas", "Add linkifier": "Přidat generátor odkazů", "Add members": "Přidat členy", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Přidat člena…", - "Add new default stream": "Přidat nový výchozí kanál", "Add new user group": "Přidat novou uživatelskou skupinu", "Add one or more users": "Přidat jednoho nebo více uživatelů", "Add option": "Přidat volbu", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Přidat odběratele. K hromadnému přidávání odběratelů použijte uživatelskou skupinu nebo #streamname.", "Add task": "Přidat úkol", "Add video call": "Přidat obrazový hovor", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Úspěšně přidáno!", "Added successfully.": "Úspěšně přidáno.", "Administrator": "Správce", @@ -124,6 +129,7 @@ "Alerted messages": "Zprávy s upozorněním", "All": "Vše", "All direct messages": "Všechny přímé zprávy", + "All groups": "", "All messages": "Všechny zprávy", "All messages including muted streams": "Všechny zprávy včetně ztlumených kanálů", "All streams": "Všechny kanály", @@ -136,9 +142,11 @@ "Allow subdomains": "Povolit subdomény", "Allowed domains": "Povolené domény", "Allowed domains: {domains}": "Povolené domény: {domains}", + "Already members:": "", "Already not subscribed.": "Odběr již vypnut.", "Already subscribed to {stream}": "Již odebírá {stream}", "Already subscribed users:": "Již k odběru přihlášení uživatelé:", + "Already subscribed.": "", "Always": "Vždy", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API klíč lze použít pro progamový přístup k Zulip účtu. Kdokoliv, kdo má přístup k vašemu API klíči, může číst vaše zprávy, odesílat zprávy za vás a v zásadě vystupovat na Zulipu vaším jménem. To znamená, že byste měli svůj API klíč držet v bezpečí stejně jako vaše heslo.
Doporučujeme využít roboty a robotické účty (resp. jejich API klíče) pro přístup k API Zulipu pokud úkol vyloženě nevyžaduje přístup k vašemu účtu.", "An hour ago": "Před hodinou", @@ -150,6 +158,7 @@ "Archive ?": "Archivovat ?", "Archive stream": "Archivovat kanál", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Archivací kanálu bude všem okamžitě zrušen odběr. Tento krok nepůjde vrátit zpět.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "Určitě chcete pokračovat?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Jste si jistý, že chcete vytvořit kanál '''{stream_name}'''' a přihlásit k jeho odběru {count} uživatelů?", "Are you sure you want to deactivate this organization?": "Opravdu chcete vypnout tuto organizaci?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Opravdu chcete znovu poslat pozvánku ?", "Are you sure you want to revoke the invitation to {email}?": "Opravdu chcete zrušit pozvánku {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Opravdu chcete zrušit tento zvací odkaz vytvořený {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Jste si jisti, že chcete zasílat oznámení o @-zmínkách {subscriber_count} uživatelům odebírajícím #{stream_name}? Pokud ne, upravte prosím svou zprávu tak, abyste odstranili zmínku @{wildcard_mention}.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Chcete odhvězdičkovat všechny ohvězdičkované zprávy v ? Tento krok nelze vrátit zpět.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Chcete odhvězdičkovat všechny ohvězdičkované zprávy? Tento krok nelze vrátit zpět.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Změny avatarů jsou v této organizaci zakázány", "Avatar from Gravatar": "Avatar z Gravataru", "Back to streams": "Zpět na kanály", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Protože jste jediným vlastníkem organizace, nemůžete svůj účet vypnout.", "Because you are the only subscriber, this stream will be automatically archived.": "Protože jste jediný odběratel, bude tento kanál automaticky archivován.", "Billing": "Fakturace", @@ -190,8 +201,11 @@ "Bot owner": "Vlastník robota", "Bot type": "Druh robota", "Bots": "Roboti", + "Browse 1 more stream": "", "Browse recent conversations": "Procházet nedávné konverzace", "Browse streams": "Procházet kanály", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Podnikání", "Busy": "Zaneprázdněn", "By deactivating your account, you will be logged out immediately.": "Deaktivací vašeho účtu budete okamžitě odhlášen/a.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Klepněte zde pro odhalení.", "Click on the pencil () icon to edit and reschedule a message.": "Klepněte na ikonu tužky () pro upravení a přeplánování zprávy.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Pro uložení klepněte mimo zadávací pole. Automaticky bude upozorněn každý, kdo byl přidán nebo odstraněn.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Klepněte pro zobrazení nebo stáhnutí.", "Close": "Zavřít", "Close modal": "Zavřít okno", @@ -232,7 +248,7 @@ "Commuting": "Dojíždění", "Compact": "Kompaktní", "Complete": "Dokončeno", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Dokončete profil organizace pro označení a vysvětlení účelu této organizace Zulip.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Vytvořit zprávu", "Compose your message here": "Svoji zprávu sepište zde", "Compose your message here...": "Svoji zprávu sepište zde...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Převést emotikony před odesláním (z :) bude 😃)", "Cookie Bot": "Cookie robot", "Copied!": "Zkopírováno!", + "Copy URL": "", "Copy address": "Kopírovat adresu", "Copy and close": "Kopírovat a zavřít", "Copy code": "Kopírovat kód", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "V současné době se zobrazují všechny zprávy.", "Currently viewing the entire stream.": "V současné době se zobrazuje celý kanál.", "Custom": "Vlastní", + "Custom URL": "", "Custom emoji": "Vlastní obrázeček", "Custom language: {query}": "Vlastní jazyk: {query}", "Custom linkifier added!": "Přidán vlastní odkazovač!", @@ -302,10 +320,12 @@ "Deactivated": "Vypnutý", "Deactivated users": "Vypnutí uživatelé", "December": "Prosinec", + "Default": "", "Default for stream": "Výchozí pro kanál", "Default is {language}. Use 'text' to disable highlighting.": "Výchozí je {language}. Použijte 'text' pro zakázání zvýrazňování.", "Default language for code blocks": "Výchozí jazyk pro bloky kódu", "Default streams": "Výchozí kanály", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Výchozí kanály pro tuto organizaci", "Default user settings": "Výchozí uživatelská nastavení", "Default view": "Výchozí zobrazení", @@ -314,12 +334,14 @@ "Delete": "Smazat", "Delete alert word": "Smazat sledované slovo", "Delete all drafts": "Smazat všechny koncepty", + "Delete all selected drafts": "", "Delete code playground?": "Smazat hřiště s kódem?", "Delete custom profile field?": "Smazat vlastní pole profilu?", "Delete data export?": "Smazat uložení dat?", "Delete draft": "Smazat koncept", "Delete file": "Smazat soubor", "Delete file?": "Smazat soubor?", + "Delete group": "", "Delete icon": "Smazat ikonu", "Delete linkifier?": "Smazat generátor odkazů?", "Delete logo": "Smazat logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "V závislosti na velikosti organizace může uložení dat trvat několik sekund až hodinu.", "Deprecation notice": "Oznámení o zastarání", "Description": "Popis", + "Deselect draft": "", "Desktop": "Pracovní plocha", "Desktop & mobile apps": "Aplikace pro počítače a telefony", "Desktop message notifications": "Oznámení o zprávách na ploše", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Podrobná dokumentace k formátování zpráv", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "Přímé zprávy", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Zakázáno", "Discard": "Zahodit", @@ -360,9 +385,9 @@ "Display my availability to other users": "Zobrazit moji dostupnost ostatním uživatelům", "Display names of reacting users when few users have reacted to a message": "Zobrazit jména odpovídajících uživatelů, pokud na zprávu odpovědělo několik uživatelů", "Display on user card": "", - "Display settings": "Nastavení zobrazení", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Chcete přidat všechny?", + "Do you want to mark them all as read?": "", "Domain": "Doména", "Don’t allow disposable email addresses": "Zakázat jednorázové e-mailové adresy", "Download": "Stáhnout", @@ -388,7 +413,7 @@ "Edit custom profile field": "Upravit vlastní pole profilu", "Edit linkfiers": "Upravit generátory odkazů", "Edit message": "Upravit zprávu", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Upravit vybraný koncept", "Edit selected message or view source": "", "Edit status": "Upravit stav", @@ -398,7 +423,6 @@ "Edit your last message": "Upravit poslední zprávu", "Edit your profile": "Upravit svůj profil", "Edit {group_name}": "Upravit {group_name}", - "Edited ({last_edit_timestr})": "Upraveno ({last_edit_timestr})", "Edited by {full_name}": "Upraveno {full_name}", "Education (for-profit)": "Vzdělávání (ziskové)", "Education (non-profit)": "Vzdělávání (neziskové)", @@ -461,6 +485,7 @@ "External account type": "Vnější typ účtu", "External link": "Externí odkaz", "Failed": "Nepodařilo se", + "Failed adding one or more streams.": "", "Failed to create video call.": "Nepodařilo se vytvořit obrazový hovor.", "Failed to generate preview": "Nepodařilo se vytvořit náhled", "Failed to upload %'{file}'": "Nepodařilo se nahrát %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filtrovat uložená data", "Filter groups": "Filtrovat skupiny", "Filter invites": "Filtrovat pozvánky", - "Filter languages": "Filtrovat jazyky", "Filter linkifiers": "Filtrovat generátory odkazů", "Filter members": "Filtrovat členy", "Filter muted users": "Filtrovat ztlumené uživatele", - "Filter roles": "", "Filter streams": "Filtrovat kanály", "Filter subscribers": "Filtrovat odběratele", "Filter topics": "Filtrovat témata", @@ -500,6 +523,9 @@ "First message": "První zpráva", "First time? Read our guidelines for creating and naming streams.": "Poprvé? Přečtěte si naše pokyny, jak tvořit a pojmenovávat kanály.", "First time? Read our guidelines for creating user groups.": "Poprvé? Přečtěte si naše pokyny, jak tvořit uživatelské skupiny.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Přisuzování GIPHY", "GIPHY integration": "Integrace GIPHY", "General": "Obecné", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Vytvořit zvací odkaz", "Generate new API key": "Vytvořit nový API klíč", @@ -542,14 +569,18 @@ "High contrast mode": "Režim vysokého kontrastu", "Hint": "Nápověda", "Hint (up to 80 characters)": "Nápověda (až 80 znaků)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Lidé", "Idle": "Nečinný", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Přehlížet vypnuté uživatele:", "Image": "Obrázek", "In a meeting": "Na schůzce", "Inactive": "Nečinný", "Inactive bots": "Nečinní roboti", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Zahrnout obsah zpráv v e-mailech s oznámeními o zprávách", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Příchozí webhooky mohou pouze odesílat zprávy.", "Initiate a search": "Vyhledávání", "Insert new line": "Vložit nový řádek", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrace", "Interface": "Rozhraní", "Invalid URL": "Neplatná adresa (URL)", @@ -581,6 +614,8 @@ "Inviting...": "Odesílání pozvánek...", "Italic": "Kurzíva", "January": "Leden", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "Připojit se k {realm_name}", "Joined": "Přidal se", @@ -599,8 +634,10 @@ "Last 30 days": "Posledních 30 dnů", "Last 6 months": "Posledních 6 měsíců", "Last active": "Naposledy činný", + "Last edited {last_edit_timestr}": "", "Last message": "Poslední zpráva", "Last modified": "Naposledy změněno", + "Last moved {last_edit_timestr}": "", "Learn more": "Dozvědět se více", "Learn more about mentions here.": "O zmínkách se můžete dozvědět víc zde.", "Learn more about starring messages here.": "Další informace o označování zpráv hvězdičkou zde.", @@ -623,6 +660,7 @@ "Log out": "Odhlásit se", "Looking for our integrations or API documentation?": "Hledáte naše začlenění nebo dokumentaci k API?", "MOVED": "PŘESUNUTO", + "Main menu": "", "Manage bot": "Spravovat robota", "Manage streams": "Spravovat kanály", "Manage this bot": "Spravovat tohoto robota", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Uvádět čas s ohledem na časové pásmo", "Mentioned in": "Zmíněn v", "Mentions": "Zmínky", - "Menu": "Nabídka", "Menus": "Nabídky", "Message #{stream_name}": "Zpráva #{stream_name}", "Message #{stream_name} > {topic_name}": "Zpráva #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Zpráva {recipient_names}", "Message {recipient_name} ({recipient_status})": "Zpráva {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Telefon", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "Přesunout tuto a všechny následující zprávy v tomto tématu", "Move topic": "Přesunout téma", - "Moved ({last_edit_timestr})": "Přesunuto ({last_edit_timestr})", "Moved by {full_name}": "Přesunuto {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Musí být pozván odběratelem; noví odběratelé mohou vidět pouze zprávy poslané až poté, co se připojili; skryto uživatelům, kteří nejsou správci", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Musí být pozván odběratelem; noví odběratelé mohou vidět celou historii zpráv; skryto uživatelům, kteří nejsou správci", + "Mute": "", "Mute stream": "Ztlumit kanál", "Mute this user": "Ztlumit tohoto uživatele", "Mute topic": "Ztlumit téma", @@ -734,38 +773,42 @@ "New password is too weak": "Nové heslo je příliš slabé", "New stream announcements": "Oznámení nového kanálu", "New stream message": "Zpráva nového kanálu", + "New stream notifications": "Oznámení o nových kanálech", "New task": "Nový úkol", "New topic": "Nové téma", "New user announcements": "Oznámení nového uživatele", + "New user notifications": "Upozornění na nové uživatele", "Next message": "Další zpráva", "Next unread direct message": "", "Next unread topic": "Další nepřečtené téma", - "Next week": "Příští týden", "No bots match your current filter.": "Vašemu nynějšímu filtru neodpovídají žádní roboti.", + "No conversations match your filters.": "", "No custom emoji.": "Není vlastní obrázeček.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Vašemu nynějšímu filtru neodpovídají žádné výchozí kanály.", "No description.": "Žádný popis.", + "No drafts selected": "", "No drafts.": "Žádné návrhy.", "No exports.": "Žádná uložená data.", "No invites match your current filter.": "Vašemu nynějšímu filtru neodpovídají žádné pozvánky.", "No language set": "Nenastaven žádný jazyk", "No linkifiers set.": "Nenastaven žádný generátor odkazů.", + "No matching results": "", "No matching users.": "Žádní odpovídající uživatelé.", "No one has read this message yet.": "Tuto zprávu si zatím nikdo nepřečetl.", "No owner": "Žádný vlastník", "No playgrounds configured.": "Nenastavena žádná hřiště.", "No restrictions": "Žádná omezení", "No scheduled messages.": "", - "No search results": "Žádné výsledky hledání", "No search results.": "", "No stream subscriptions.": "Žádné odběry kanálů.", "No streams": "Žádné kanály", "No topics are marked as resolved.": "Žádná témata nejsou označena jako vyřešená.", - "No topics match your current filter.": "Vašemu nynějšímu filtru neodpovídají žádná témata.", "No user group subscriptions.": "Žádné odběry skupin uživatelů.", "No user groups": "", "No user to subscribe.": "Žádný uživatel k odběru.", "No users match your current filter.": "Vašemu nynějšímu filtru neodpovídají žádní uživatelé.", + "No users to add.": "", "No, I'll catch up.": "Ne, později.", "Nobody": "Nikdo", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "Upozornit kanál", "Notify this user by email?": "Upozornit tohoto uživatele e-mailem?", "November": "Listopad", + "Numbered list": "", "October": "Říjen", "Old password": "Staré heslo", "Once you leave this group, you will not be able to rejoin.": "Jakmile tuto skupinu opustíte, nebudete se moci znovu připojit.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Tato nastavení mohou měnit pouze majitelé.", "Only stream members can add users to a private stream": "Do soukromého kanálu mohou další uživatele přidávat pouze jeho členové.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Oprávnění k tomuto kanálu mohou upravovat pouze jeho odběratelé.", "Open": "Otevřít", "Open message menu": "Otevřít nabídku ke zprávě", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "Politická skupina", "Posted by {full_name}": "Zveřejnil {full_name}", + "Preferences": "", "Press > for list of topics": "Stiskněte > pro zobrazení seznamu témat", "Prevent users from changing their avatar": "Zabránit uživatelům v úpravách jejich avatarů", "Prevent users from changing their email address": "Zabránit uživatelům v úpravách jejich e-mailů", @@ -869,6 +915,7 @@ "Previous message": "Předchozí zpráva", "Privacy": "Soukromí", "Privacy settings": "Nastavení soukromí", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Soukromá, chráněná historie", "Private, shared history": "Soukromá, sdílená historie", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Znovu zapnout robota", "Reactivate this bot": "Zapnout znovu tohoto robota", "Reactivate this user": "Zapnout znovu tohoto uživatele", + "Reactivate user": "", "Reactivate {name}": "Zapnout znovu {name}", "Read receipts": "Potvrzení o přečtení", "Read receipts are currently disabled in this organization.": "Potvrzení o přečtení jsou v současnosti v této organizaci zakázány.", @@ -930,6 +978,7 @@ "Saved as draft": "Uloženo jako koncept", "Saved. Please reload for the change to take effect.": "Uloženo. Aby se tyto změny projevily, obnovte prosím stránku.", "Saving": "Ukládání", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Podívejte se jak nastavit e-mail.", "Select a stream": "Vybrat kanál", "Select a stream below or change topic name.": "Vyberte kanál níže nebo změňte název tématu.", - "Select date and time": "Vyberte datum a čas", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Vybrat obrázeček", "Select language": "Vybrat jazyk", + "Select stream": "", "Send": "Odeslat", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Poslat automatické upozornění na nové téma", "Send automated notice to old topic": "Poslat automatické upozornění na staré téma", "Send digest emails when I'm away": "Posílat zprávy s přehledy, když jsem pryč", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Ukázat náhledy nahraných a odkazovaných obrázků", "Show starred message count": "Ukázat počet zpráv s hvězdičkami", "Show status text": "Zobrazit stavový text", + "Show unread counts for": "", "Show/change your API key": "Ukázat/změnit váš API klíč", "Sign up": "Zaregistrovat se", "Silent mentions do not trigger notifications.": "Tiché zmínky nespouštějí oznámení.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Řadit podle odhadovaného týdenního provozu", "Sort by name": "Řadit podle názvu", "Sort by number of subscribers": "Řadit podle počtu odběratelů", + "Sort by unread message count": "", "Spoiler": "Vyzrazení", "Star": "Hvězdička", "Star selected message": "Přidat hvězdičku k označené zprávě", @@ -1024,8 +1080,10 @@ "Subscribe": "Odebírat", "Subscribe them": "Odebírat je", "Subscribe to/unsubscribe from selected stream": "Odebírat/Zrušit odběr vybraných kanálů", + "Subscribe {full_name} to streams": "", "Subscribed": "Odebíráno", "Subscribed streams": "Odebírané kanály", + "Subscribed successfully!": "Odběr úspěšně nastaven!", "Subscriber count": "Počet odběratelů", "Subscribers": "Odběratelé", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Nyní nejsou dostupná žádná sledovaná slova.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "Spravují následující roboty:", "This Zulip server is running an old version and should be upgraded.": "Server Zulip běží ve staré verzi a měl by být povýšen.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Toto není veřejně přístupný rozhovor.", "This is what a Zulip notification looks like.": "Takto vypadá oznámení Zulipu.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Tato zpráva byla skrytá, protože jste ztlumil odesílatele.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Časové pásmo", "Time's up!": "Čas vypršel!", "Tip: You can also send \"/poll Some question\"": "Tip: Také můžete poslat \"/poll Nějaká otázka?\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Pro přidání zvýrazňování syntaxe do víceřádkového bloku kódu první krátký název v Pygmentu jazyka. Kódový blok rovněž můžete udělat odsazením každého řádku 4 mezerami.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Chcete-li pozvat uživatele, prosím, navyšte počet licencí nebo vypněte nečinné uživatele.", "To preserve your reading state, this view does not mark messages as read.": "Pro zachování vašeho stavu čtení toto zobrazení neoznačuje zprávy jako přečtené.", "Today": "Dnes", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Přepnout odběr", "Toggle the gear menu": "Otevřít nastavení Zulipu", "Toggle topic mute": "Přepnout ztlumení tématu", - "Tomorrow": "Zítra", "Tomorrow at {time}": "", "Topic": "Téma", "Topic muted": "Téma ztlumeno", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Vypnout neviditelný režim", "Two factor authentication": "2FA (dvoufaktorové ověření)", "Type": "Typ", + "URL": "Adresa (URL)", + "URL for your integration": "", "URL pattern": "Vzor adresy (URL) ", - "URL prefix": "Předpona URL", "URL template": "", "USERS": "UŽIVATELÉ", "Uncheck all": "Odznačit vše", @@ -1139,6 +1197,7 @@ "Unmute this user": "Zrušit ztlumení tohoto uživatele", "Unmute topic": "Zrušit ztlumení tématu", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Odepnout kanál odshora", "Unread": "Nepřečtené", "Unread count badge (appears in desktop sidebar and browser tab)": "Znamení počtu nepřečtených (zobrazuje se na postranním panelu plochy a na kartě prohlížeče)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Zobrazit koncepty", - "View edit history": "Zobrazit historii úprav", + "View edit and move history": "", "View file": "Zobrazit soubor", "View in playground": "Zobrazit na hřišti", "View in {name}": "Zobrazit v {name}", @@ -1227,26 +1286,28 @@ "Web-public": "Internetový veřejný", "Wednesday": "Středa", "Week of {date}": "Týden {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Vítejte zpět. Máte {unread_msgs_count} nepřečtených zpráv. Chcete je všechny označit jako přečtené?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Jaká zájmena by měli lidé používat, když o vás mluví?", "When you deactivate , they will be immediately logged out.": "Když vypnete , budou okamžitě odhlášeni..", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Zda je se zmínkami (zástupný symbol) jako @all zacházeno jako se zmínkami pro účel oznámení.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Kdo může přistupovat ke kanálu?", "Who can access user's email address": "", - "Who can access your email address": "", + "Who can access your email address": "Kdo může přistupovat k vaší adrese elektronické pošty", "Who can add bots": "Kdo může přidávat roboty", "Who can add custom emoji": "Kdo může přidat vlastní emoji", "Who can add users to streams": "Kdo může přidat uživatele do kanálů", "Who can create and manage user groups": "Kdo může vytvářet a spravovat uživatelské skupiny", "Who can create private streams": "Kdo může vytvářet soukromé kanály", "Who can create public streams": "Kdo může vytvářet veřejné kanály", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Kdo může vytvářet internetové veřejné kanály", "Who can delete their own messages": "Kdo může mazat své vlastní zprávy", - "Who can invite users to this organization": "Kdo může pozvat další uživatele do této organizace", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Kdo může přidat zprávu do kanálu?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Kdo může použít zmínky @all/@everyone ve velkých kanálech", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Vy a", "You and {display_reply_to}": "Vy a {display_reply_to}", "You and {recipients}": "Vy a {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Momentálně tento kanál neodebíráte.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Odesíláte zprávu do vyřešeného tématu. Můžete odeslat tak, jak je, nebo nejprve zrušit vyřešení tématu.", "You are using an old version of the Zulip desktop app with known security bugs.": "Používáte starou verzi aplikace pracovní plochy Zulip se známými chybami zabezpečení.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Neodebíráte tento kanál a nikdo o tomto ještě nemluvil!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Také můžete dělat tabulky s toutoMarkdown tabulkovou syntaxí.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Vytvořením účtu Zulip v této organizaci získáte plný přístup k tomuto společenství a můžete se účastnit rozhovorů.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Nemáte oprávnění používat v tomto kanálu zmínky se zástupnými znaky.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Dostanete", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Ztlumil jste .", + "You have muted this topic": "", "You have no active bots.": "Nemáte žádné činné roboty.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Ještě jste neztlumil/a žádné uživatele.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Ještě jste nenahrál/a žádné soubory.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Ještě vás nikdo nikde nezmínil!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Abyste mohl/a vytvořit kanál bez toho, aniž byste ho také odebíral/a, musíte být správcem organizace.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Abyste mohl/a odesílat zprávy, musíte zajistit funkční zrcadlení Zephyr!", "You searched for:": "Hledal jste:", "You subscribed to stream ": "", "You type": "Napíšete", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Tento kanál neodebíráte. Pokud vám někdo odpoví na vaši zprávu, nedostanete o tom žádné upozornění.", "Your API key:": "Váš API kíč:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Váš účet Zulip v byl vypnut a vy se již nebudete moci přihlásit.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip potřebuje odeslat e-mail pro ověření adresy uživatele a posílání oznámení.", "Zulip needs your permission to enable desktop notifications.": "Zulip potřebuje vaše dovolení pro povolení oznámení na ploše.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Překlady Zulipu přispívá naše úžasné společenství dobrovolných překladatelů. Pokud chcete být nápomocni, podívejte se na Pokyny pro překlad Zulipu.", "[Configure]": "[Nastavit]", - "[Disable]": "[Zakázat]", - "[More…]": "[Více…]", "[Quoting…]": "[Citování...]", - "[Unset]": "[nenastaveno]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "a {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "on/jemu", - "in 1 hour": "za 1 hodinu", - "in 20 minutes": "za 20 minut", - "in 3 hours": "za 3 hodiny", "invisible mode off": "neviditelný režim vypnut", "leafy green vegetable": "listnatá zelená zelenina", "marketing": "Marketing", "more conversations": "další konverzace", "more topics": "další témata", - "or": "nebo", "she/her": "ona/jí", "they/them": "oni/jim", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} few {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "před {days_old} dny", "{full_name} is typing…": "{full_name} píše…", "{hours} hours ago": "před {hours} hodinami", - "{items_selected} selected": "{items_selected} vybráno", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} minut na upravení", "{minutes} minutes ago": "před {minutes} minutami", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Tato zpráva byla čtena {num_of_people} osobou:} few {Tato zpráva byla čtena {num_of_people} lidmi:} many {Tato zpráva byla čtena {num_of_people} lidmi:} other {Tato zpráva byla čtena {num_of_people} lidmi:}}", "{seconds} sec to edit": "{seconds} sekund na upravení", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} místní čas", "{username} [said]({link_to_message}):": "{username} [said]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} odpověděl {emoji_name}" diff --git a/locale/cy/LC_MESSAGES/django.po b/locale/cy/LC_MESSAGES/django.po index ed4126b415..983bce2857 100644 --- a/locale/cy/LC_MESSAGES/django.po +++ b/locale/cy/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Tim Abbott , 2022\n" "Language-Team: Welsh (http://app.transifex.com/zulip/zulip/language/cy/)\n" @@ -19,46 +19,47 @@ msgstr "" "Language: cy\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Ni chaniateir i ddefnyddwyr gwadd" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Sefydliad annilys" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Ffrydiau cyhoeddus" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Ffrydiau preifat" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Enw siart anhysbys: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Mae'r amser cychwyn yn hwyrach na'r amser gorffen. Dechreuwch: {start}, Diwedd: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Nid oes data dadansoddeg ar gael. Cysylltwch â gweinyddwr eich gweinydd." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Paramedrau annilys" @@ -119,29 +120,31 @@ msgid "" msgstr "Nid oes gan eich sefydliad ddigon o drwyddedau Zulip nas defnyddiwyd i wahodd defnyddwyr {num_invites}." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Rhaid i chi anfonebu am o leiaf {} defnyddiwr." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Ni ellir prosesu anfonebau â mwy na {} trwydded o'r dudalen hon. I gwblhau'r uwchraddiad, cysylltwch â {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Aeth rhywbeth o'i le. Cysylltwch â {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Aeth rhywbeth o'i le. Ail-lwythwch y dudalen." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Aeth rhywbeth o'i le. Arhoswch ychydig eiliadau a rhoi cynnig arall arni." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -173,7 +176,7 @@ msgstr "Methu diweddaru'r cynllun. Mae'r cynllun wedi dod i ben a rhoi cynllun n msgid "Unable to update the plan. The plan has ended." msgstr "Methu diweddaru'r cynllun. Mae'r cynllun wedi dod i ben." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -189,14 +192,14 @@ msgstr "Mae eich cynllun eisoes ar drwyddedau {licenses} yn y cyfnod bilio cyfre msgid "You cannot decrease the licenses in the current billing period." msgstr "Ni allwch ostwng y trwyddedau yn y cyfnod bilio cyfredol." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Disgwylir i'ch cynllun adnewyddu eisoes gyda thrwyddedau {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Dim byd i newid." @@ -208,7 +211,7 @@ msgstr "Dim cwsmer i'r sefydliad hwn!" msgid "Session not found" msgstr "Ni ddaethpwyd o hyd i sesiwn" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Rhaid bod yn weinyddwr biliau neu'n berchennog sefydliad" @@ -258,7 +261,7 @@ msgid "" msgstr "\n Os yw'r gwall hwn yn annisgwyl, gallwch chi\n cysylltwch â chefnogaeth.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Gwall gweinydd mewnol" @@ -560,9 +563,9 @@ msgstr "Statws bilio" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -580,9 +583,9 @@ msgstr "Gweld prisio" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Zulip hunan-westeiwr" @@ -592,9 +595,9 @@ msgstr "Zulip hunan-westeiwr" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Gofyn am nawdd" @@ -857,51 +860,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Cofrestrwch gyda %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Cadarnhewch eich cyfeiriad e-bost" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Diolch am cofrestru!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Dal dim e-bost? Gallwn ei ail-gyflwyno ." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Rhag ofn, edrychwch ar eich ffolder Sbam." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Os na fydd y neges hon yn diflannu, trio ail-lwytho'r dudalen." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Methu cysylltu â Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Efallai y bydd diweddariadau yn cael eu gohirio." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Ailgynnig yn fuan ..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Rhowch gynnig nawr." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Negeseuon" @@ -1149,6 +1152,159 @@ msgstr "Defnyddwyr arferol" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Croeso i Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL y sefydliad: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Defnyddiwch eich cyfrif LDAP i fewngofnodi" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s ar Zulip: Manylion eich sefydliad newydd" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s ar Zulip: Manylion eich cyfrif newydd" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Rydych chi wedi ymuno â sefydliad Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1156,6 +1312,39 @@ msgstr "" msgid "Hi," msgstr "Helo," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Os na ofynasoch am y newid hwn, cysylltwch â ni ar unwaith ar %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Os na ofynasoch am y newid hwn, cysylltwch â ni ar unwaith yn<%(support_email)s> ." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1169,23 +1358,10 @@ msgstr "Cawsom gais i newid y cyfeiriad e-bost ar gyfer y cyfrif Zulip ar %(real msgid "Confirm email change" msgstr "Cadarnhau newid e-bost" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Os na ofynasoch am y newid hwn, cysylltwch â ni ar unwaith ar %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Gwiriwch eich cyfeiriad e-bost newydd" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Os na ofynasoch am y newid hwn, cysylltwch â ni ar unwaith yn<%(support_email)s> ." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1239,17 +1415,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1354,225 +1519,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Mae gan eich cyfeiriad e-bost %(email)s gyfrifon gyda'r sefydliadau Zulip canlynol a gynhelir gan %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Croeso i Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL y sefydliad: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Defnyddiwch eich cyfrif LDAP i fewngofnodi" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s ar Zulip: Manylion eich sefydliad newydd" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s ar Zulip: Manylion eich cyfrif newydd" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Rydych chi wedi ymuno â sefydliad Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Enghreifftiau o bynciau byr" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Ewch i Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1657,14 +1603,14 @@ msgstr "Daw'r gwahoddiad hwn i ben mewn dau ddiwrnod. Os daw'r gwahoddiad i ben, #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1696,21 +1642,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1718,21 +1688,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1775,29 +1745,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nNid yw'r e-bost hwn yn cynnwys cynnwys neges oherwydd bod gennych analluogi gynnwys neges yn ymddangos mewn hysbysiadau e-bost. Gweler %(alert_notif_url)s i gael mwy o fanylion.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nPeidiwch ag ymateb i'r e-bost hwn. Nid yw'r gweinydd Zulip hwn wedi'i ffurfweddu i dderbyn e-byst sy'n dod i mewn. Help:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Rheoli dewisiadau e-bost:" @@ -1960,6 +1930,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1988,6 +1966,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Enghreifftiau o bynciau byr" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Ewch i Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2376,7 +2426,7 @@ msgid "Incoming webhooks" msgstr "Webhooks sy'n dod i mewn" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Bots rhyngweithiol" @@ -2876,292 +2926,295 @@ msgid "" " " msgstr "\nGallwch hefyd ddefnyddio'r app bwrdd gwaith Zulip ." -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "cofrestriadau" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} newydd gofrestru ar gyfer Zulip. (cyfanswm: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "Derbyniodd {user} eich gwahoddiad i ymuno â Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Mapio archeb annilys." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Id maes {id} heb ei ddarganfod." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Enw grŵp ffrwd diofyn annilys '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Enw grŵp ffrwd diofyn yn rhy hir (terfyn: {} nod)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Mae enw grŵp nant diofyn '{}' yn cynnwys nodau NULL (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Grŵp ffrwd diofyn annilys {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "Mae '{stream_name}' yn ffrwd ddiofyn ac ni ellir ei ychwanegu at '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Mae grŵp llif diofyn '{group_name}' eisoes yn bodoli" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Mae ffrwd '{stream_name}' eisoes yn bresennol yn y grŵp llif diofyn '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Nid yw ffrwd '{stream_name}' yn bresennol yn y grŵp llif diofyn '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Mae'r grŵp ffrwd diofyn hwn eisoes wedi'i enwi '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Mae grŵp llif diofyn'{}' eisoes yn bodoli" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Er mwyn amddiffyn defnyddwyr, mae Zulip yn cyfyngu ar nifer y gwahoddiadau y gallwch eu hanfon mewn un diwrnod. Oherwydd eich bod wedi cyrraedd y terfyn, ni anfonwyd unrhyw wahoddiadau." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Mae eich cyfrif yn rhy newydd i anfon gwahoddiadau ar gyfer y sefydliad hwn. Gofynnwch i weinyddwr sefydliad, neu ddefnyddiwr mwy profiadol." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Ni ddilysodd rhai e-byst, felly ni wnaethom anfon unrhyw wahoddiadau." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Nid oeddem yn gallu gwahodd unrhyw un." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Mae rhai o'r cyfeiriadau hynny eisoes yn defnyddio Zulip, felly ni wnaethom anfon gwahoddiad atynt. Fe wnaethon ni anfon gwahoddiadau at bawb arall!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Dim byd i newid" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Propagate_mode annilys heb olygu pwnc" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Methu newid cynnwys neges wrth newid nant" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Ni ellir golygu widgets." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "Mae {user} wedi nodi'r pwnc hwn fel y'i datryswyd." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "Mae {user} wedi nodi'r pwnc hwn fel un heb ei ddatrys." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Symudwyd y pwnc hwn yma i {new_location} gan {user}" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Symudwyd neges o'r pwnc hwn i {new_location} gan {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "Cafodd {changed_messages_count} neges eu symud o'r pwnc hwn i {new_location} gan {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Symudwyd y pwnc hwn yma o {old_location} gan {user}" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} symudwyd negeseuon yma o {old_location} gan {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Mae eich sefydliad wedi diffodd golygu negeseuon" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Nid oes gennych ganiatâd i olygu'r neges hon" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Mae'r terfyn amser ar gyfer golygu'r neges hon wedi mynd heibio" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Nid oes gennych ganiatâd i ddefnyddio cyfeiriadau cardiau gwyllt yn y ffrwd hon." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Nid oes gennych ganiatâd i symud y neges hon" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Nid oes gennych ganiatâd i symud y neges hon oherwydd colli mynediad i'w nant" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Baner annilys: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Baner ddim yn olygadwy: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Gweithrediad baner neges annilys: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Neges(au) annilys" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Methu rhoi neges" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Disgwylir yn union un ffrwd" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Math o ddata annilys ar gyfer ffrwd" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Math data annilys ar gyfer derbynwyr" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Gall rhestrau derbynwyr gynnwys e-byst neu IDau defnyddiwr, ond nid y ddau." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Ceisiodd eich bot {bot_identity} anfon neges i ffrydio ID {stream_id}, ond nid oes ffrwd gyda'r ID hwnnw." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Ceisiodd eich bot {bot_identity} anfon neges i ffrydio {stream_name}, ond nid yw'r ffrwd honno'n bodoli. Cliciwch [yma] ({new_stream_link}) i'w greu." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Ceisiodd eich bot {bot_identity} anfon neges i ffrydio {stream_name}. Mae'r ffrwd yn bodoli ond nid oes ganddo unrhyw danysgrifwyr." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Mae angen pynciau yn y sefydliad hwn" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: Anfonodd rhaglennydd API gynnwys JSON annilys" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Mae adwaith eisoes yn bodoli." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Mae emoji personol gyda'r enw hwn eisoes yn bodoli." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3175,8 +3228,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3195,18 +3248,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "Mae {user} wedi newid y [access permissions](/help/stream-permissions) ar gyfer y ffrwd hon o **{old_policy}** i **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3215,38 +3282,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} wedi newid y [posting permissions](/help/stream-sending-policy) ar gyfer y ffrwd hon:\n\n* **Old permissions**: {old_policy}.\n* **New permissions**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} ailenwyd yn ffrwd {old_stream_name} i {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Dim disgrifiad." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} wedi newid y disgrifiad ar gyfer y ffrwd hon." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Hen disgrifiad" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Disgrifiad newydd" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Am byth" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Bydd negeseuon yn y nant hon nawr yn cael eu cadw am byth." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3256,56 +3323,59 @@ msgid "" "{summary_line}" msgstr "{user} wedi newid y [message retention period](/help/message-retention-policy) am y ffrwd hwn:\n* **Old retention period**: {old_retention_period}\n* **New retention period**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Ni allwch atodi is-asesiad i'r neges hon." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID defnyddiwr annilys {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Mae grŵp defnyddwyr '{}' eisoes yn bodoli." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Nid yw'r API hwn ar gael i bots webhook sy'n dod i mewn." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Nid yw cyfrif yn gysylltiedig â'r is-barth hwn" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Nid yw'r pwynt terfyn hwn yn derbyn ceisiadau bot." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Rhaid bod yn weinyddwr gweinydd" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Caniatâd annigonol" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Mae'r terfynbwynt hwn yn gofyn am ddilysiad sylfaenol HTTP." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Pennawd awdurdodi annilys ar gyfer awdur sylfaenol" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Pennawd awdurdodiad coll ar gyfer awdur sylfaenol" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Dim ond bachyngwe y gall bots bachyngwe eu cyrchu" @@ -3320,95 +3390,101 @@ msgstr "Mae eich cyfrif {username} wedi'i ddadactifadu. Cysylltwch â gweinyddwr msgid "The password is too weak." msgstr "Mae'r cyfrinair yn rhy wan" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Mae angen i subdomain fod â hyd 3 neu fwy." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Ni all subdomain ddechrau na gorffen gyda '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Dim ond llythrennau bach, rhifau ac '-'au y gall is-barth eu cael." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Isbarth ddim ar gael. Dewiswch un gwahanol." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Defnyddiwch eich cyfeiriad e-bost go iawn." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Nid yw'r sefydliad rydych chi'n ceisio ymuno ag ef gan ddefnyddio {email} yn bodoli." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Gofynnwch am wahoddwr am {email} gan weinyddwr y sefydliad." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Nid yw eich cyfeiriad e-bost, {email}, yn un o'r parthau y caniateir iddynt gofrestru ar gyfer cyfrifon yn y sefydliad hwn." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Ni chaniateir cyfeiriadau e-bost sy'n cynnwys + yn y sefydliad hwn." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Ni all aelodau newydd ymuno â'r sefydliad hwn oherwydd bod holl drwyddedau Zulip yn cael eu defnyddio. Cysylltwch â'r person a'ch gwahoddodd a gofyn iddynt gynyddu nifer y trwyddedau, yna ceisiwch eto." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Cyfrinair newydd" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Cadarnhad cyfrinair newydd" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Rydych chi'n gwneud gormod o ymdrechion i fewngofnodi. Ceisiwch eto ymhen {} eiliad neu cysylltwch â gweinyddwr eich sefydliad am gymorth." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Mae'ch cyfrinair wedi'i analluogi oherwydd ei fod yn rhy wan. Ailosodwch eich cyfrinair i greu un newydd." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Tocyn" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Rhowch 10 e-bost ar y mwyaf." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Ni allem ddod o hyd i'r sefydliad Zulip hwnnw." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "E-bost annilys '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3472,31 +3548,31 @@ msgstr "Ni all is-barthau ddechrau na gorffen gyda '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Dim ond gall parth eu cael llythyrau, rhifau, '.' a '-'au." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Rhaid i timestamp beidio â bod yn negyddol." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Rhaid i'r pwnc beidio â chynnwys null bytes" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Rhaid nodi'n union 1 ID ffrwd ar gyfer negeseuon nant" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Mae defnyddiwr wedi analluogi ddrafftiau cydamseru." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Nid yw drafft yn bodoli" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Agorwch Zulip i weld y cynnwys difetha" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Hysbysiadau Zulip" @@ -3529,166 +3605,166 @@ msgstr "Eisoes ganddo gyfrif." msgid "Account has been deactivated." msgstr "Mae'r cyfrif wedi'i ddadactifadu." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Nid yw Emoji '{}' yn bodoli" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personol annilys." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Enw emoji personol annilys." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Mae'r emoji personol hwn wedi'i ddadactifadu." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Cod emoji annilys." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Enw emoji annilys." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Math emoji annilys." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Rhaid bod yn weinyddwr sefydliad neu'n awdur emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Mae enw Emoji ar goll" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Methu dyrannu ciw digwyddiad" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Heb fewngofnodi: Angen dilysu API neu sesiwn defnyddiwr" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Nid yw ffrwd '{stream}' yn bodoli" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Nid yw ffrwd ag ID '{stream_id}' yn bodoli" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "perchennog y sefydliad" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "defnyddiwr" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Methu dadactifadu'r unig {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Mae Markdown annilys yn cynnwys datganiad: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Roedd y defnydd o API yn uwch na'r terfyn cyfradd" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON camffurfiedig" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Rhaid bod yn aelod o'r sefydliad" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Rhaid bod yn weinyddwr sefydliad" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Rhaid bod yn berchennog sefydliad" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Mae eich enw defnyddiwr neu gyfrinair yn anghywir" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Mae'r cyfrif yn cael ei ddadactifadu" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Mae'r sefydliad hwn wedi'i ddadactifadu" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Mae'r cofrestriad gwasanaeth hysbysu gwthio symudol ar gyfer eich gweinydd wedi'i ddadactifadu" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Mae dilysu cyfrinair yn analluogi yn y sefydliad hwn" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Mae'ch cyfrinair wedi'i anablu ac mae angen ei ailosod" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Allwedd API annilys" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Allwedd API camffurfiedig" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Ar hyn o bryd nid yw'r digwyddiad '{event_type}' yn cael ei gefnogi gan y webhook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Methu dosrannu cais: A wnaeth {webhook_name} gynhyrchu'r digwyddiad hwn?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Isbarth annilys" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Mynediad wedi ei wrthod" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3696,6 +3772,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Mae adwaith eisoes yn bodoli." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Nid yw adwaith yn bodoli." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3737,8 +3821,8 @@ msgid "Settings" msgstr "Gosodiadau" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Ewch i Gosodiadau i ffurfweddu'ch hysbysiadau a'ch gosodiadau arddangos." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3750,264 +3834,272 @@ msgid "" "and give it a go!" msgstr "Cliciwch yma i ddechrau sgwrs newydd. Dewiswch bwnc (2-3 gair sydd orau), a rhowch gynnig arni!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Fframweithiau integreiddio" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integreiddio parhaus" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Cefnogaeth i gwsmeriaid" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Defnyddio" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Adloniant" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Cyfathrebu" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Ariannol" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marchnata" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Amrywiol" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Rheoli prosiect" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Cynhyrchedd" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Rheoli fersiwn" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Rhaid i'r neges beidio â bod yn wag" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Rhaid i'r neges beidio â chynnwys bytes nwl" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Gweithredwr {} heb ei gefnogi." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Gweithredwr cul annilys: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Dadl 'angor' ar goll." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Angor annilys" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Os ydych chi'n newydd i Zulip, edrychwch ar ein [Canllaw cychwyn arni] ({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Helo, a chroeso i Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Gallaf hefyd eich helpu i sefydlu! Cliciwch unrhyw le ar y neges hon neu pwyswch `r` i ateb." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Dyma ychydig o negeseuon rwy'n eu deall:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Ewch i [Gosodiadau proffil] (#gosodiadau/proffil) i ychwanegu [llun proffil] (/help/change-your-profile-picture) a golygu eich [gwybodaeth proffil] (/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Ewch i [Display settings] (#settings/display-settings) i [newid rhwng y themâu golau a thywyll] (/help/dark-theme), [dewiswch eich hoff thema emoji] (/help/emoji-and-emoticons # change-your-emoji-set), [newid eich iaith] (/help/change-your-language), a gwneud newidiadau eraill i'ch profiad Zulip." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Yn Zulip, ffrydiau [penderfynu pwy sy'n cael neges] (/help/streams-and-topics). Maent yn debyg i sianeli mewn apiau sgwrsio eraill." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Pori a thanysgrifio i ffrydiau] (#ffrydiau/pob un)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "Yn Zulip, pynciau [dywedwch wrthych beth yw neges] (/help/frydiau-a-phynciau). Maent yn bynciau pwysau ysgafn, yn debyg iawn i linell pwnc e-bost." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Mae [llwybrau byr bysellfwrdd] Zulip (# bysellfwrdd-llwybrau byr) yn caniatáu ichi lywio'r ap yn gyflym ac yn effeithlon." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Pwyswch `?` Unrhyw bryd i weld [taflen twyllo] (#bysellfwrdd-llwybrau byr)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Mae Zulip yn defnyddio [Markdown] (/help/format-your-message-using-markdown), fformat greddfol ar gyfer **print trwm**, *italig*, rhestrau bwled, a mwy. Cliciwch [yma] (#message-formatting) i gael taflen twyllo." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Edrychwch ar ein [awgrymiadau negeseuon] (/help/messaging-tips) i ddysgu am adweithiau emoji, blociau cod a llawer mwy!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Edrychwch ar ein [Canllaw cychwyn arni] (/ help / dechrau-gyda-zulip), neu bori trwy'r [canolfan gymorth] (/ help /) i ddysgu mwy!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Mae'n ddrwg gen i, doeddwn i ddim yn deall eich neges. Rhowch gynnig ar un o'r gorchmynion canlynol:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Ffrwd breifat yw hon, fel y dangosir gan yr eicon clo wrth ymyl enw'r ffrwd." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Dim ond i aelodau ffrwdiau y mae ffrwd preifat yn weladwy." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "I reoli'r nant hon, ewch i [Gosodiadau nant] ({stream_settings_url}) a chlicio ar `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Dyma neges ar ffrwd #**{default_notification_stream_name}** gyda'r pwnc `arddangosiad pwnc`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Offeryn ysgafn yw pynciau i gadw sgyrsiau'n drefnus." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Gallwch ddysgu mwy am bynciau yn [Ffrydiau a phynciau] ({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Dyma neges ar nant #**{default_notification_stream_name}** gyda'r pwnc `crwbanod nofio`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4022,669 +4114,758 @@ msgstr "JSON annilys mewn ymateb" msgid "Invalid response format" msgstr "Fformat ymateb annilys" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Opsiwn GCM annilys i bownsar: blaenoriaeth {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Opsiynau GCM annilys i bownsar: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Nid yw Token yn bodoli" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Mae'r sefydliad hwn wedi anabl gan gynnwys cynnwys neges mewn hysbysiadau gwthio symudol" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "Soniodd {full_name} @ {user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "Soniodd {full_name} amdanoch chi:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "Soniodd {full_name} am bawb:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Nid yw'r defnyddiwr wedi'i awdurdodi ar gyfer yr ymholiad hwn" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "Nid yw '{email}' bellach yn defnyddio Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Gwthio hysbysiadau bownsar gwall: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Methu penderfynu rhwng dadleuon '{var_name1}' a '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Dadl ar goll '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Gwerth gwael ar gyfer '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Llwyth tâl anffurf" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Nid yw dadl \"{}\" yn ddilys JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Diogelwch Cyfrif Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Dim ond gweinyddwyr sefydliadau all anfon at y ffrwd hwn." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Dim ond gweinyddwyr a chymedrolwyr sefydliadau all anfon at y ffrwd hwn." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Ni all gwesteion anfon i'r ffrwd hon." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Ni all aelodau newydd anfon at y ffrwd hon." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Heb awdurdod i anfon i ffrwd '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Cyflenwi 'ffrwd' os gwelwch yn dda." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Dewiswch un: 'stream' neu 'stream_id'" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Cymerir enw ffrwd '{}' eisoes." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Enw ffrwd annilys '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Nid yw ffrwd(iau) ({}) yn bodoli" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Nid yw ffrydiau cyhoeddus ar y we wedi'u galluogi." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Nid yw grŵp nant diofyn gydag id '{}' yn bodoli." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Ni all gair ffrwd fod yn wag!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Enw'r ffrwd yn rhy hir (terfyn: {} nod)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Nod annilys yn enw'r nant, yn safle {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Ni all y pwnc fod yn wag" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Cymeriadau annilys yn y pwnc, at safle {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Nid oes data tanysgrifiwr ar gael ar gyfer y llif hwn" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Methu adfer tanysgrifwyr ar gyfer nant preifat" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "Nid yw {var_name} yn boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "nid yw {var_name} yn ddyddiad" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "nid yw {var_name} yn ddict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "Nid yw {var_name} yn float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "Mae {var_name} yn rhy fach" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "nid yw {var_name} yn gyfanrif" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "Mae {var_name} yn rhy fawr" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "nid yw {var_name} yn rhestr" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Annilys {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "mae {var_name} yn rhy hir (terfyn: {max_length} nod)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "nid yw {var_name} yn llinyn" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Byddai'r llwyth yn fwy na chwota uwchlwytho eich sefydliad." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Methu dadgodio delwedd; wnaethoch chi uwchlwytho ffeil delwedd?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Mae maint y ddelwedd yn fwy na'r terfyn." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Delwedd animeiddiedig llwgr." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Fformat delwedd animeiddiedig anhysbys." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grŵp defnyddwyr annilys" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Enw yn rhy hir!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Enw yn rhy fyr!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Cymeriadau annilys mewn enw!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Fformat annilys!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Mae'r enw eisoes yn cael ei ddefnyddio!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Enw, neu enw defnyddiwr, ddrwg" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Integreiddiad annilys '{}'" +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Paramedrau cyfluniad ar goll: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Gwerth annilys {} {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Data cyfluniad annilys!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Math bot annilys" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Math rhyngwyneb annilys" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "ID defnyddiwr annilys: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Dim bot o'r fath" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Dim defnyddiwr o'r fath" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Mae'r defnyddiwr wedi'i ddadactifadu" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "nid yw {var_name} yn llinyn" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "Ni all {item} fod yn wag." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Annilys {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "mae {var_name} yn rhy hir (terfyn: {max_length} nod)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "mae gan {var_name} hyd anghywir {length}; dylai fod yn {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "nid yw {var_name} yn ddyddiad" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "nid yw {var_name} yn gyfanrif" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "Mae {var_name} yn rhy fach" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "Mae {var_name} yn rhy fawr" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "Nid yw {var_name} yn float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "Nid yw {var_name} yn boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "Nid yw {var_name} yn god lliw hecs dilys" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "nid yw {var_name} yn rhestr" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "Dylai fod gan {container} eitemau {length} yn union" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "nid yw {var_name} yn ddict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "mae allwedd {key_name} ar goll o {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Dadleuon annisgwyl: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "Nid yw {var_name} yn allow_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable}! = {expected_value} ({value} yn anghywir)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "nid yw {var_name} yn URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "Ni all '{item}' fod yn wag." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "Nid yw '{value}' yn ddewis dilys ar gyfer '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "nid yw {var_name} yn llinyn nac yn rhestr gyfanrif" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "nid yw {var_name} yn llinyn nac yn gyfanrif" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "Nid oes gan {var_name} hyd" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} ar goll" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Ar goll pennawd digwyddiad HTTP '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Mae'r {} webhook yn disgwyl amser mewn milieiliadau." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Dylai fod slaes blaenllaw yn y zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Dim gorchymyn o'r fath: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Gwall CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "digwyddiadau ffrwd" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Ar gael ar Zulip Safonol. Uwchraddio i gael mynediad." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Cymeriadau annilys mewn enw emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Mynegiant rheolaidd drwg: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Gwall mynegiant rheolaidd anhysbys" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Cymeriadau annilys mewn iaith pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Gweinyddwyr, cymedrolwyr ac aelodau a gwesteion" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Gweinyddwyr, cymedrolwyr ac aelodau" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Gweinyddwyr a chymedrolwyr" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Gweinyddwyr yn unig" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Neb" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Perchennog y sefydliad" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Gweinyddwr sefydliad" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Cymedrolwr" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Aelod" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Gwadd" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Gwe cyhoeddus" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Cyhoeddus" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Hanes preifat, a rennir" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Hanes preifat, gwarchodedig" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Hanes cyhoeddus, gwarchodedig" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Gall holl aelodau'r ffrwd bostio" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Dim ond gweinyddwyr sefydliad all bostio" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Dim ond gweinyddwyr a chymedrolwyr sefydliadau all bostio" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Dim ond aelodau llawn y sefydliad all bostio" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji Unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personol" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji ychwanegol Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Mae defnyddiwr ag ID {} wedi'i ddadactifadu" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Mae defnyddiwr ag ID {} yn bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Rhestr o opsiynau" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Codwr person" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Testun byr" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Testun hir" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Codwr dyddiad" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Dolen" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Cyfrif allanol" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Cyfeiriad IP anhysbys" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "system weithredu anhysbys" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Porwr anhysbys" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Eitem 'queue_id' ar goll" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Eitem 'last_event_id' ar goll" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Mae digwyddiad mwy newydd na {event_id} eisoes wedi'i docio!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Nid oedd digwyddiad {event_id} yn y ciw hwn" @@ -4752,89 +4933,123 @@ msgstr "Mae maes gyda'r label hwnnw eisoes yn bodoli." msgid "Default custom field cannot be updated." msgstr "Ni ellir diweddaru maes arfer diofyn." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Pwynt gorffen ddim ar gael wrth gynhyrchu." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend heb ei alluogi." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Mannau poeth anhysbys: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Rhaid i chi nodi o leiaf un cyfeiriad e-bost." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Nid yw nant yn bodoli gydag id: {}. Ni anfonwyd unrhyw wahoddiadau." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Dim gwahoddiad o'r fath" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Mae hanes golygu neges wedi'i anablu yn y sefydliad hwn" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Nid oes gennych ganiatâd i ddileu'r neges hon" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Mae'r terfyn amser ar gyfer dileur neges hon wedi mynd heibio" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Neges wedi'i dileu eisoes" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Gofynnwyd am ormod o negeseuon (uchafswm {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Dim pwnc o'r fath '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Anfonwr ar goll" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Ni chaniateir adlewyrchu gydag IDau defnyddiwr sy'n eu derbyn" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Neges annilys wedi'i adlewyrchu" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Ni chaniateir adlewyrchu Zephyr yn y sefydliad hwn" @@ -4850,27 +5065,28 @@ msgstr "Defnyddiwr eisoes wedi'i dawelu" msgid "User is not muted" msgstr "Nid yw'r defnyddiwr yn dawel" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Ni chefnogir presenoldeb ar gyfer defnyddwyr bot." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Dim data presenoldeb ar gyfer {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Ni phasiodd y cleient unrhyw werthoedd newydd." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Rhaid i'r cleient basio emoji_name os yw'n pasio naill ai emoji_code neu reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Statws annilys: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4886,37 +5102,37 @@ msgid "" "emoji_code" msgstr "Rhaid io leiaf un o'r dadleuon canlynol fod yn bresennol: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Nid yw adwaith yn bodoli." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Iaith annilys '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Rhaid galluogi o leiaf un dull dilysu." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider {} annilys" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Giphy_rating annilys {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Rhaid bod yn sefydliad demo." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Parth annilys: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4928,42 +5144,43 @@ msgstr "Mae'r parth {domain} eisoes yn rhan o'ch sefydliad." msgid "No entry found for domain {domain}." msgstr "Ni ddarganfuwyd cofnod ar gyfer parth {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Rhaid i chi uwchlwytho un ffeil yn union." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Mae'r ffeil wedi'i llwytho i fyny yn fwy na&'r terfyn a ganiateir o {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Tu hwnt i'r terfyn cyfradd" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Gofynnwch am allforio â llaw o {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID allforio data annilys" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Allforio wedi'i ddileu eisoes" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4971,7 +5188,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Rhaid i chi uwchlwytho un eicon yn union." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Ni chafwyd hyd i gysylltydd." @@ -4979,107 +5196,100 @@ msgstr "Ni chafwyd hyd i gysylltydd." msgid "You must upload exactly one logo." msgstr "Rhaid i chi uwchlwytho un logo yn union." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Maes chwarae annilys" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Defnyddiwr heb awdurdod i gyflawni ymholiadau ar ran '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Ni ellir gwneud ffrydiau preifat yn ddiofyn." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Rhaid i chi basio \"new_description\" neu \"new_group_name\"" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Gwerth annilys ar gyfer \"op\". Nodwch un o \"ychwanegu\" neu \"tynnu\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Ni ellir gwneud ffrydiau diofyn yn breifat." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Mae gan Ffrwd yr enw hwnnw eisoes!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Dim byd i wneud. Nodwch o leiaf un o 'ychwanegu' neu 'dileu'." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "tanysgrifiodd {user_full_name} chi i'r ffrwd {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "tanysgrifiodd {user_full_name} chi i'r ffrydiau canlynol:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Methu cyrchu ffrwd ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Dim ond i ffrydiau preifat y gallwch chi wahodd defnyddwyr eraill sy'n adlewyrchu Zephyr." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "Creodd {user_name} y ffrydiau canlynol: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "Creodd {user_name} nant newydd {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "ffrydiau newydd" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** ffrwd wedi'i chreu gan {user_name}. **Disgrifiad:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Eiddo tanysgrifio anhysbys: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Heb danysgrifio i id ffrwd {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Json annilys ar gyfer submessage" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Nid oes gennych awdurdod i weld y ffeil hon.

" @@ -5095,97 +5305,108 @@ msgstr "Mae gan y defnyddiwr hysbysiadau teipio analluogi ar gyfer negeseuon ffr msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Ni ddaethpwyd o hyd i'r ffeil.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Tocyn annilys" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Enw ffeil annilys" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Rhaid i chi nodi ffeil i'w huwchlwytho" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Dim ond un ffeil y gallwch ei lanlwytho ar y tro" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Ni chyflenwyd unrhyw ddata newydd" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Mae defnyddiwr {user_id} eisoes yn aelod o'r grŵp hwn" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Nid oes unrhyw aelod '{}' yn y grŵp defnyddwyr hwn" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Mae newidiadau Afatar yn anabl yn y sefydliad hwn." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Mae newidiadau cyfeiriad e-bost yn anabl yn y sefydliad hwn." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Default_language annilys" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Sain hysbysu annilys '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Cyfnod sypio e-bost annilys: {} eiliad" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Rheolir eich cyfrinair Zulip yn LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Cyfrinair anghywir!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Rydych chi'n gwneud gormod o ymdrechion! Rhowch gynnig arall arni mewn {} eiliad." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Mae cyfrinair newydd yn rhy wan!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Rhaid i chi uwchlwytho un avatar yn union." @@ -5232,6 +5453,10 @@ msgstr "Enw bot gwreiddio annilys." msgid "Username already in use" msgstr "Enw defnyddiwr eisoes yn cael ei ddefnyddio" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5242,8 +5467,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Ni chaniateir cyfeiriadau e-bost tafladwy yn y sefydliad hwn" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "E-bostiwch '{}' sydd eisoes yn cael ei ddefnyddio" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5261,27 +5487,27 @@ msgstr "Dynodwr sesiwn Zoom annilys" msgid "Invalid Zoom credentials" msgstr "Cymwysterau Zoom annilys" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Wedi methu creu galwad Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "Nid yw BigBlueButton wedi'i ffurfweddu." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Llofnod annilys" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Gwall wrth gysylltu â gweinydd BigBlueButton." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Gwall yn dilysu i'r gweinydd BigBlueButton." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Dychwelodd gweinydd BigBlueButton wall annisgwyl." @@ -5301,28 +5527,28 @@ msgstr "Cache Kerberos annilys" msgid "We were unable to set up mirroring for you" msgstr "Nid oeddem yn gallu sefydlu adlewyrchu ar eich cyfer chi" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Llwyth tâl annilys" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Cais anhysbys ar webhook" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Ni all y pwnc fod yn wag" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Ni all y cynnwys fod yn wag" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Mewnbwn JSON wedi'i gamffurfio" @@ -5341,7 +5567,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5349,19 +5575,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Methu delio â llwyth tâl Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Gwall: paramedr sianelau_map_to_topics heblaw 0 neu 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Neges gan Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Gweithred webhook anhysbys WordPress: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5378,47 +5605,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Rhaid dilysu gydag allwedd API gweinydd Zulip dilys" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID annilys" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Math tocyn annilys" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "Nid yw {} yn enw gwesteiwr dilys" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "user_id neu user_uuid ar goll" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Eiddo annilys {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Mae'r data allan o drefn." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Data annilys." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Mae angen i chi ailosod eich cyfrinair." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Paramedr id_token ar goll" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP annilys" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Methu defnyddio mobile_flow_otp a desktop_flow_otp gyda'i gilydd." diff --git a/locale/cy/translations.json b/locale/cy/translations.json index 92838535c8..644714917b 100644 --- a/locale/cy/translations.json +++ b/locale/cy/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(cudd)", "(no description)": "(dim disgrifiad)", "(no topic)": "(dim pwnc)", + "(or )": "", "(you)": "(chi)", "({message_retention_days} days)": "({message_retention_days} diwrnod)", "/dark (Switch to the dark theme)": "/tywyll (Newid i'r thema dywyll)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "Nid yw {name} wedi'i danysgrifio i'r ffrwd hon. Ni fyddant yn cael eu hysbysu oni bai eich bod yn eu tanysgrifio.", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "Tanysgrifiwch", - "Click here to learn about exporting private streams and messages.": "Cliciwch yma i ddysgu am allforio ffrydiau a negeseuon preifat.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Uwchraddio am fwy o le.", " to add a new line": "i ychwanegu llinell newydd", " to send": "i anfon", @@ -82,15 +83,18 @@ "Add alert word": "Ychwanegwch air rhybuddio", "Add all users": "Ychawnegu pob defnyddwr", "Add another user...": "Ychwanegwch ddefnyddiwr arall ...", + "Add audio call": "", "Add code playground": "Ychwanegu maes chwarae côd", + "Add default streams": "", + "Add email": "", "Add emoji": "Ychwanegwch emoji", "Add emoji reaction": "Ychwanegwch adwaith emoji", "Add extra emoji for members of the {realm_name} organization.": "Ychwanegwch emoji ychwanegol ar gyfer aelodau'r sefydliad {realm_name}.", "Add global time": "Ychwanegwch amser byd-eang", "Add linkifier": "Ychwanegu cysylltydd", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Ychwanegwch aelod…", - "Add new default stream": "Ychwanegwch ffrwd ddiofyn newydd", "Add new user group": "", "Add one or more users": "Ychwanegwch un neu fwy o ddefnyddwyr", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Ychwanegwch danysgrifwyr. Defnyddiwch @usergroup neu #streamname i swmp-ychwanegu tanysgrifwyr.", "Add task": "Ychwanegu tasg", "Add video call": "Ychwanegwch alwad fideo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Ychwanegwyd yn llwyddiannus!", "Added successfully.": "", "Administrator": "Gweinyddwr", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "I gyd", "All direct messages": "", + "All groups": "", "All messages": "Pob neges", "All messages including muted streams": "Pob neges gan gynnwys ffrydiau wedi mudo", "All streams": "Pob ffrydiau", @@ -136,9 +142,11 @@ "Allow subdomains": "Caniatáu isbarthau", "Allowed domains": "Parthau a ganiateir", "Allowed domains: {domains}": "Parthau a ganiateir: {domains}", + "Already members:": "", "Already not subscribed.": "Eisoes heb danysgrifio.", "Already subscribed to {stream}": "Eisoes wedi tanysgrifio i {stream}", "Already subscribed users:": "Defnyddwyr sydd eisoes wedi tanysgrifio:", + "Already subscribed.": "", "Always": "Bob amser", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Gellir defnyddio allwedd API i gyrchu cyfrif Zulip yn rhaglennol. Mae gan unrhyw un sydd â mynediad i'ch allwedd API y gallu i ddarllen eich negeseuon, anfon negeseuon ar eich rhan, ac fel arall eich dynwared ar Zulip, felly dylech warchod eich allwedd API mor ofalus ag y byddwch yn gwarchod eich cyfrinair.
Rydym yn argymell creu bots a defnyddio cyfrifon y bots ac allweddi API i gael mynediad at API Zulip, oni bai bod y dasg yn gofyn am fynediad i'ch cyfrif.", "An hour ago": "Awr yn ôl", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Archif ffrwd", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Ydych chi'n siŵr eich bod chi eisiau creu ffrwd ''''{stream_name}'''' a thanysgrifio defnyddwyr {count} iddo?", "Are you sure you want to deactivate this organization?": "Ydych chi'n siŵr eich bod chi am ddadactifadu'r sefydliad hwn?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Ydych chi'n siŵr eich bod chi am ailanfon gwahoddiad i ?", "Are you sure you want to revoke the invitation to {email}?": "Ydych chi'n siŵr eich bod chi am ddirymu'r gwahoddiad i {email} ?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Ydych chi'n siŵr eich bod chi am ddirymu'r ddolen wahoddiad hon a grëwyd gan {referred_by} ?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Ydych chi'n siŵr eich bod chi am ddatod pob neges i mewn ? Ni ellir dadwneud y weithred hon.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Ydych chi'n siŵr eich bod chi am ddatod pob neges seren? Ni ellir dadwneud y weithred hon.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Mae newidiadau Afatar yn anabl yn y sefydliad hwn.", "Avatar from Gravatar": "Avatar o Gravatar", "Back to streams": "Yn ôl i ffrwdiau", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Bilio", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Math bot", "Bots": "Botiau", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "Porwch ffrydiau", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Busnes", "Busy": "Brysur", "By deactivating your account, you will be logged out immediately.": "Trwy ddadactifadu eich cyfrif, byddwch wedi allgofnodi ar unwaith.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Cliciwch yma i ddatgelu.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Cliciwch y tu allan i'r blwch mewnbwn i arbed. Byddwn yn hysbysu unrhyw un a ychwanegwyd neu a symudwyd yn awtomatig.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Cliciwch i weld neu lawrlwytho.", "Close": "Cau", "Close modal": "Caewch y moddol", @@ -232,7 +248,7 @@ "Commuting": "Cymudo", "Compact": "", "Complete": "Wedi'i gwblhau", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Cwblhewch y proffil sefydliad i frandio ac egluro pwrpas y sefydliad Zulip hwn.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Cyfansoddi neges", "Compose your message here": "Cyfansoddwch eich neges yma", "Compose your message here...": "Cyfansoddwch eich neges yma ...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Trosi emoticons cyn anfon ( :) dod yn 😃)", "Cookie Bot": "Bot Cwci", "Copied!": "Wedi copio!", + "Copy URL": "", "Copy address": "", "Copy and close": "Copïo a chau", "Copy code": "Copio côd", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Personol", + "Custom URL": "", "Custom emoji": "Emoji personol", "Custom language: {query}": "Iaith personol: {query}", "Custom linkifier added!": "Ychwanegwyd cysylltydd personol!", @@ -302,10 +320,12 @@ "Deactivated": "Wedi'i ddadactifadu", "Deactivated users": "Defnyddwyr wedi'u dadactifadu", "December": "Rhagfyr", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Rhagosodiad yw {language}. Defnyddiwch 'testun' i analluogi tynnu sylw.", "Default language for code blocks": "Iaith ddiofyn ar gyfer blociau côd:", "Default streams": "Ffrydiau diofyn", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Gosodiadau defnyddiwr diofyn", "Default view": "Golygfa ddiofyn", @@ -314,12 +334,14 @@ "Delete": "Dileu", "Delete alert word": "Dileu gair rhybuddio", "Delete all drafts": "Dileu pob drafft", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Dileu drafft", "Delete file": "Dileu ffeil", "Delete file?": "", + "Delete group": "", "Delete icon": "Dileu eicon", "Delete linkifier?": "", "Delete logo": "Dileu logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Yn dibynnu ar faint eich sefydliad, gall allforio gymryd unrhyw le o eiliadau i awr.", "Deprecation notice": "Rhybudd dibrisiant", "Description": "Disgrifiad", + "Deselect draft": "", "Desktop": "Bwrdd gwaith", "Desktop & mobile apps": "Apiau bwrdd gwaith a symudol", "Desktop message notifications": "Hysbysiadau neges bwrdd gwaith", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Dogfennaeth fformatio neges fanwl", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Anabl", "Discard": "Gwared", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Gosodiadau arddangos", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Ydych chi eisiau ychwanegu pawb?", + "Do you want to mark them all as read?": "", "Domain": "Parth", "Don’t allow disposable email addresses": "Peidiwch â chaniatáu cyfeiriadau e-bost tafladwy", "Download": "Dadlwythwch", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "Golygu linkfiers", "Edit message": "Golygu neges", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Golygu drafft dethol", "Edit selected message or view source": "", "Edit status": "Golygu statws", @@ -398,7 +423,6 @@ "Edit your last message": "Golygwch eich neges olaf", "Edit your profile": "Golygwch eich proffil", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Wedi'i olygu ({last_edit_timestr})", "Edited by {full_name}": "Golygwyd gan {full_name}", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Math o gyfrif allanol", "External link": "Dolen allanol", "Failed": "Wedi methu", + "Failed adding one or more streams.": "", "Failed to create video call.": "Wedi methu creu galwad fideo.", "Failed to generate preview": "Wedi methu cynhyrchu rhagolwg", "Failed to upload %'{file}'": "Wedi methu uwchlwytho%'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Hidlo allforion", "Filter groups": "", "Filter invites": "Hidlo gwahoddiadau", - "Filter languages": "Hidlau ieithoedd", "Filter linkifiers": "Hidlo cysylltwyr", "Filter members": "", "Filter muted users": "Hidlo defnyddwyr tawel", - "Filter roles": "", "Filter streams": "Hidlo ffrydiau", "Filter subscribers": "Hidlo tanysgrifwyr", "Filter topics": "Hidlo pynciau", @@ -500,6 +523,9 @@ "First message": "Neges gyntaf", "First time? Read our guidelines for creating and naming streams.": "Y tro cyntaf? Darllenwch ein canllawiau ar gyfer creu ac enwi ffrydiau.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Priodoli GIPHY", "GIPHY integration": "Integreiddio GIPHY", "General": "Cyffredinol", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Cynhyrchu dolen gwahoddiad ", "Generate new API key": "Cynhyrchu allwedd API newydd", @@ -542,14 +569,18 @@ "High contrast mode": "Modd cyferbyniad uchel", "Hint": "Awgrym", "Hint (up to 80 characters)": "Awgrym (hyd at 80 nod)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Bodau dynol", "Idle": "Diog", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Defnyddwyr hanwybyddu, wedi'u dadactifadu:", "Image": "Delwedd", "In a meeting": "Mewn cyfarfod", "Inactive": "", "Inactive bots": "Bots anactif", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Cynhwyswch gynnwys neges mewn e-byst hysbysu neges", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Dim ond anfon negeseuon y gall webhooks sy'n dod i mewn eu hanfon.", "Initiate a search": "Dechreuwch chwiliad", "Insert new line": "Mewnosod llinell newydd", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integreiddiadau", "Interface": "Rhyngwyneb", "Invalid URL": "URL annilys", @@ -581,6 +614,8 @@ "Inviting...": "Gwahodd ...", "Italic": "Italaidd", "January": "Ionawr", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Ymunodd", @@ -599,8 +634,10 @@ "Last 30 days": "30 diwrnod diwethaf", "Last 6 months": "6 mis diwethaf", "Last active": "Yn weithredol ddiwethaf", + "Last edited {last_edit_timestr}": "", "Last message": "Neges olaf", "Last modified": "Newidiwyd ddiwethaf", + "Last moved {last_edit_timestr}": "", "Learn more": "Dysgu mwy", "Learn more about mentions here.": "Dysgu mwy am grybwylliadau yma .", "Learn more about starring messages here.": "Dysgu mwy am serennu negeseuon yma .", @@ -623,6 +660,7 @@ "Log out": "Allgofnodi", "Looking for our integrations or API documentation?": "Chwilio am ein integreiddiadau neu dogfennaeth API ?", "MOVED": "SYMUDWYD", + "Main menu": "", "Manage bot": "", "Manage streams": "Rheoli nentydd", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Sôn am amser sy'n ymwybodol o gylchfa amser", "Mentioned in": "Wedi'i grybwyll yn", "Mentions": "Sôn am", - "Menu": "Dewislen", "Menus": "Dewislenni", "Message #{stream_name}": "Neges #{stream_name}", "Message #{stream_name} > {topic_name}": "Neges #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Neges {recipient_names}", "Message {recipient_name} ({recipient_status})": "Neges {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Symudol", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Symud pwnc", - "Moved ({last_edit_timestr})": "Symudwyd ({last_edit_timestr})", "Moved by {full_name}": "Symudwyd gan {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Rhaid ei wahodd gan danysgrifiwr; dim ond ar ôl iddynt ymuno y gall tanysgrifwyr newydd weld negeseuon yn cael eu hanfon; wedi'i guddio rhag defnyddwyr nad ydyn nhw'n weinyddwyr", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Rhaid ei wahodd gan danysgrifiwr; gall tanysgrifwyr newydd weld hanes neges gyflawn; wedi'i guddio rhag defnyddwyr nad ydyn nhw'n weinyddwyr", + "Mute": "", "Mute stream": "Mudo'r ffrwd", "Mute this user": "Mudo'r defnyddiwr hwn", "Mute topic": "Mudo'r pwnc", @@ -734,38 +773,42 @@ "New password is too weak": "Mae cyfrinair newydd yn rhy wan", "New stream announcements": "", "New stream message": "Neges ffrwd newydd", + "New stream notifications": "Hysbysiadau ffrwd newydd", "New task": "Tasg newydd", "New topic": "Pwnc newydd", "New user announcements": "", + "New user notifications": "Hysbysiadau defnyddiwr newydd", "Next message": "Neges nesaf", "Next unread direct message": "", "Next unread topic": "Pwnc nesaf heb ei ddarllen", - "Next week": "Wythnos nesaf", "No bots match your current filter.": "Nid oes unrhyw bots yn cyd-fynd â'ch hidlydd cyfredol.", + "No conversations match your filters.": "", "No custom emoji.": "Dim emoji personol.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nid oes unrhyw ffrydiau diofyn yn cyd-fynd â'ch hidlydd cyfredol.", "No description.": "Dim disgrifiad.", + "No drafts selected": "", "No drafts.": "Dim drafftiau.", "No exports.": "Dim allforion.", "No invites match your current filter.": "Nid oes unrhyw wahoddiadau yn cyd-fynd â'ch hidlydd cyfredol.", "No language set": "Dim iaith wedi setio", "No linkifiers set.": "Dim cysylltwyr wedi'u gosod.", + "No matching results": "", "No matching users.": "Dim defnyddwyr sy'n cyfateb.", "No one has read this message yet.": "", "No owner": "Dim perchennog", "No playgrounds configured.": "Dim meysydd chwarae wedi'u ffurfweddu.", "No restrictions": "Dim cyfyngiadau", "No scheduled messages.": "", - "No search results": "Dim canlyniadau chwilio", "No search results.": "", "No stream subscriptions.": "Dim tanysgrifiadau ffrwd.", "No streams": "Dim ffrydiau", "No topics are marked as resolved.": "Nid oes unrhyw bynciau wedi'u marcio fel rhai wedi'u datrys.", - "No topics match your current filter.": "Nid oes unrhyw bynciau yn cyd-fynd â'ch hidlydd cyfredol.", "No user group subscriptions.": "Dim tanysgrifiadau grŵp defnyddwyr.", "No user groups": "", "No user to subscribe.": "Dim defnyddiwr i danysgrifio.", "No users match your current filter.": "Nid oes unrhyw ddefnyddwyr yn cyd-fynd â'ch hidlydd cyfredol.", + "No users to add.": "", "No, I'll catch up.": "Na, byddaf yn dal i fyny.", "Nobody": "Neb", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Tachwedd", + "Numbered list": "", "October": "Hydref", "Old password": "Hen gyfrinair", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Dim ond aelodau ffrwd all ychwanegu defnyddwyr at ffrwd breifat", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Ar agor", "Open message menu": "Agor dewislen neges ", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "Postiwyd gan {full_name}", + "Preferences": "", "Press > for list of topics": "Pwyswch > am restr o bynciau", "Prevent users from changing their avatar": "Atal defnyddwyr rhag newid eu afatar", "Prevent users from changing their email address": "Atal defnyddwyr rhag newid eu cyfeiriad e-bost", @@ -869,6 +915,7 @@ "Previous message": "Neges flaenorol", "Privacy": "Preifatrwydd", "Privacy settings": "Gosodiadau preifatrwydd", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Hanes preifat, gwarchodedig", "Private, shared history": "Hanes preifat, a rennir", "Profile": "Proffil", @@ -883,6 +930,7 @@ "Reactivate bot": "Ailgychwyn bot", "Reactivate this bot": "", "Reactivate this user": "Ailysgogwch y defnyddiwr hwn", + "Reactivate user": "", "Reactivate {name}": "Ailysgogwch {name}", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Wedi'i gadw fel drafft", "Saved. Please reload for the change to take effect.": "Wedi'i gadw. Plis ail-lwytho i'r newid ddod i rym.", "Saving": "Yn cadw", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Gweld sut i ffurfweddu e-bost.", "Select a stream": "", "Select a stream below or change topic name.": "Dewiswch ffrwd isod neu newid enw pwnc.", - "Select date and time": "Dewiswch ddyddiad ac amser", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Dewiswch emoji", "Select language": "", + "Select stream": "", "Send": "Anfon", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Anfon e-byst treulio pan fyddaf i ffwrdd", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Dangos rhagolwg o ddelweddau wedi'u huwchlwytho a'u cysylltu", "Show starred message count": "Dangos cyfrif negeseuon serennog", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Dangos/newid eich allwedd API", "Sign up": "Cofrestru", "Silent mentions do not trigger notifications.": "Nid yw cyfeiriadau distaw yn sbarduno hysbysiadau.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Trefnu yn ôl amcangyfrif o'r traffig wythnosol", "Sort by name": "Trefnu yn ôl enw", "Sort by number of subscribers": "Trefnu yn ôl nifer y tanysgrifwyr", + "Sort by unread message count": "", "Spoiler": "Anrheithiwr", "Star": "Seren", "Star selected message": "Serennu neges dethol ", @@ -1024,8 +1080,10 @@ "Subscribe": "Tanysgrifiwch", "Subscribe them": "Tanysgrifiwch nhw", "Subscribe to/unsubscribe from selected stream": "Tanysgrifiwch i/dad-danysgrifio o ffrwd dethol", + "Subscribe {full_name} to streams": "", "Subscribed": "Tanysgrifiwyd", "Subscribed streams": "Ffrydiau tanysgrifiedig", + "Subscribed successfully!": "", "Subscriber count": "Cyfrif tanysgrifiwr", "Subscribers": "Tanysgrifwyr", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Nid oes unrhyw eiriau rhybuddio cyfredol.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Mae'r gweinydd Zulip hwn yn rhedeg hen fersiwn a dylid ei uwchraddio.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Dyma sut mae hysbysiad Zulip yn edrych.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Cuddiwyd y neges hon oherwydd eich bod wedi tawelu’r anfonwr.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Parth amser", "Time's up!": "Amser i fyny!", "Tip: You can also send \"/poll Some question\"": "Awgrym: Gallwch hefyd anfon \"/poll Some question\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "I ychwanegu tynnu sylw at gystrawen at floc cod aml-linell, ychwanegwch gyntaf Pygments enw byr yr iaith ar ôl y set gyntaf o gefn-diciau. Gallwch hefyd wneud bloc cod trwy fewnoli 4 llinell i bob llinell.", "To invite users, please increase the number of licenses or deactivate inactive users.": "I wahodd defnyddwyr, os gwelwch yn dda cynyddu nifer y trwyddedau neu dadactifadwch defnyddwyr anactif .", "To preserve your reading state, this view does not mark messages as read.": "Er mwyn cadw eich cyflwr darllen, nid yw'r olwg hon yn nodi bod negeseuon wedi'u darllen.", "Today": "Heddiw", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Toglo tanysgrifiad", "Toggle the gear menu": "Toglo'r ddewislen gêr", "Toggle topic mute": "Toglo mud pwnc", - "Tomorrow": "Yfory", "Tomorrow at {time}": "", "Topic": "Pwnc", "Topic muted": "Pwnc tawel", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Dilysu dau ffactor", "Type": "Math", + "URL": "", + "URL for your integration": "", "URL pattern": "Patrwm URL", - "URL prefix": "Rhagddodiad URL", "URL template": "", "USERS": "DEFNYDDWYR", "Uncheck all": "Dad-diciwch y cyfan", @@ -1139,6 +1197,7 @@ "Unmute this user": "Dad-fudo'r defnyddiwr hwn", "Unmute topic": "Dad-fudo'r pwnnc", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Dad-pinio'r ffrwd o'r brig", "Unread": "Heb ei ddarllen", "Unread count badge (appears in desktop sidebar and browser tab)": "Crynodeb cyfrif heb ei ddarllen (yn ymddangos yn y bar ochr bwrdd gwaith a thab porwr)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Gweld drafftiau", - "View edit history": "Gweld hanes golygu", + "View edit and move history": "", "View file": "Gweld y ffeil", "View in playground": "Golygfa yn y maes chwarae", "View in {name}": "Gweld yn {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Gwe cyhoeddus", "Wednesday": "Dydd Mercher", "Week of {date}": "Wythnos o {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Croeso nol! Mae gennych chi {unread_msgs_count} negeseuon heb eu darllen. Ydych chi am eu marcio i gyd fel rhai wedi'u darllen?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "Trwy ddadactifadu , byddant yn cael eu allgofnodi ar unwaith.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "P'un a yw cyfeiriadau cardiau gwyllt fel @all yn cael eu trin fel cyfeiriadau at ddibenion hysbysiadau.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Pwy all gyrchu'r ffrwd?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Pwy all greu a rheoli grwpiau defnyddwyr", "Who can create private streams": "Pwy all greu ffrydiau preifat", "Who can create public streams": "Pwy all greu ffrydiau cyhoeddus", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Pwy all greu ffrydiau gwe-gyhoeddus", "Who can delete their own messages": "Pwy all ddileu eu negeseuon eu hunain", - "Who can invite users to this organization": "Pwy all wahodd defnyddwyr i'r sefydliad hwn", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Pwy all bostio i'r ffrwd?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Pwy all ddefnyddio @pawb yn crybwyll mewn ffrydiau mawr", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Chi a", "You and {display_reply_to}": "Chi ac {display_reply_to}", "You and {recipients}": "Chi ac {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Ar hyn o bryd nid ydych wedi tanysgrifio i'r ffrwd hon.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Rydych chi'n anfon neges at bwnc sydd wedi'i ddatrys. Gallwch anfon fel y mae neu ddad-ddatrys y pwnc yn gyntaf.", "You are using an old version of the Zulip desktop app with known security bugs.": "Rydych chi'n defnyddio hen fersiwn o'r app bwrdd gwaith Zulip gyda bygiau diogelwch hysbys.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Nid ydych wedi tanysgrifio i'r ffrwd hon a does neb wedi siarad am hynny eto!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Gallwch chi hefyd wneud byrddau gyda hyn Cystrawen tabl Markdown-ish .", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Nid oes gennych ganiatâd i ddefnyddio cyfeiriadau cardiau gwyllt yn y ffrwd hon.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Rydych chi'n cael", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Rydych chi wedi tawelu .", + "You have muted this topic": "", "You have no active bots.": "Nid oes gennych bots gweithredol.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Nid ydych wedi tawelu unrhyw ddefnyddwyr eto.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Nid ydych wedi uwchlwytho unrhyw ffeiliau.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Nid ydych wedi cael eich crybwyll eto!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Rhaid i chi fod yn weinyddwr sefydliad i greu ffrwd heb danysgrifio.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Mae angen i chi fod yn rhedeg Zephyr yn adlewyrchu er mwyn anfon negeseuon!", "You searched for:": "Fe wnaethoch chi chwilio am:", "You subscribed to stream ": "", "You type": "Rydych chi'n teipio", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Nid ydych wedi tanysgrifio i'r nant hon. Ni chewch eich hysbysu os bydd defnyddwyr eraill yn ymateb i'ch neges.", "Your API key:": "Eich allwedd API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Mae angen i Zulip anfon e-bost i gadarnhau cyfeiriadau defnyddwyr ac anfon hysbysiadau.", "Zulip needs your permission to enable desktop notifications.": "Mae angen eich caniatâd ar Zulip galluogi hysbysiadau bwrdd gwaith.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Mae cyfieithiadau Zulip yn cael eu cyfrannu gan ein cymuned anhygoel o gyfieithwyr gwirfoddol. Os hoffech chi helpu, gwelwch y Canllawiau cyfieithu Zulip .", "[Configure]": "[Ffurfweddu]", - "[Disable]": "[Analluoga]", - "[More…]": "[Mwy…]", "[Quoting…]": "[Dyfynnu…]", - "[Unset]": "[Dad-setio]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "ac {remaining_senders, plural, one {1 arall} other {# others}}.", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "mewn 1 awr", - "in 20 minutes": "mewn 20 munud", - "in 3 hours": "mewn 3 awr", "invisible mode off": "", "leafy green vegetable": "llysiau gwyrdd deiliog", "marketing": "marchnata", "more conversations": "", "more topics": "mwy o bynciau", - "or": "neu", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} two {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} diwrnod yn ôl", "{full_name} is typing…": "Mae {full_name} yn teipio…", "{hours} hours ago": "{hours} oriau yn ôl", - "{items_selected} selected": "{items_selected} wedi'i ddewis", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} two {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} munud i'w olygu", "{minutes} minutes ago": "{minutes} munud yn ôl", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} two {} many {} other {}}", "{seconds} sec to edit": "{seconds} eiliad i'w olygu", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [dywedodd] ({link_to_message}):", "{username} reacted with {emoji_name}": "Adweithiodd {username} gyda {emoji_name}" diff --git a/locale/da/LC_MESSAGES/django.po b/locale/da/LC_MESSAGES/django.po index bab420a807..680c0649e3 100644 --- a/locale/da/LC_MESSAGES/django.po +++ b/locale/da/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,46 +18,46 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -114,32 +114,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -259,7 +259,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -569,9 +569,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -589,9 +589,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -601,9 +601,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -912,7 +912,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -941,7 +941,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1172,8 +1171,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1181,7 +1332,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1191,647 +1374,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1859,15 +1435,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1882,6 +1453,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1895,6 +1471,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1913,6 +1501,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1920,6 +1518,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1931,204 +1541,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2138,6 +1553,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2155,6 +1575,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2162,6 +1587,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2186,14 +1625,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2212,6 +1651,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2229,6 +1680,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2236,6 +1694,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2330,6 +1796,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2343,6 +1827,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2351,6 +1880,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2413,6 +1956,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2441,6 +1992,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2449,6 +2088,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2465,6 +2127,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2740,7 +2460,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3249,16 +2969,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3267,7 +2987,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3324,27 +3044,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3384,72 +3104,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3468,74 +3182,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3568,32 +3290,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3603,38 +3325,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3654,7 +3376,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3675,12 +3397,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3711,90 +3434,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3865,31 +3592,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3969,131 +3696,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4138,7 +3864,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4151,92 +3877,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4430,67 +4156,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4514,8 +4227,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4528,101 +4241,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4645,498 +4445,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5229,57 +4983,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5297,19 +5079,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5325,25 +5107,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5366,26 +5148,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5414,33 +5196,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5448,7 +5230,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5468,88 +5250,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5595,87 +5368,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5756,27 +5529,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5800,24 +5573,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5836,7 +5609,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5844,20 +5617,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5892,20 +5665,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5917,10 +5690,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/da/translations.json b/locale/da/translations.json index c376c91f20..43acbef02c 100644 --- a/locale/da/translations.json +++ b/locale/da/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po index 12d94d8a77..51591ca951 100644 --- a/locale/de/LC_MESSAGES/django.po +++ b/locale/de/LC_MESSAGES/django.po @@ -37,7 +37,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Roman Bannack , 2020-2023\n" "Language-Team: German (http://app.transifex.com/zulip/zulip/language/de/)\n" @@ -47,46 +47,47 @@ msgstr "" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Nicht zugänglich für Gastnutzer" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Ungültige Organisation" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Öffentliche Streams" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Private Streams" -#: analytics/views/stats.py:296 -msgid "Direct messages" -msgstr "" - #: analytics/views/stats.py:297 +msgid "Direct messages" +msgstr "Direktnachrichten" + +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Unbekannter Diagrammname: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Die Startzeit ist später als die Endzeit. Start: {start}, Ende: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Keine Analysedaten verfügbar. Bitte kontaktiere den Server-Administrator." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Ungültige Parameter" @@ -147,29 +148,31 @@ msgid "" msgstr "Deine Organisation hat nicht genügend Zulip-Lizenzen, um noch {num_invites} Nutzer einzuladen." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Du musst für mindestens {} Nutzer per Rechnung zahlen." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Rechnungen mit mehr als {} Lizenzen können nicht von dieser Seite aus verarbeitet werden. Um das Upgrade zu vollenden, kontaktiere bitte {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Etwas hat nicht geklappt. Bitte {email} kontaktieren." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Etwas ist schief gelaufen. Bitte lade die Seite erneut." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Etwas ist schief gelaufen. Bitte warte ein paar Sekunden und versuche es nochmal." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -201,7 +204,7 @@ msgstr "Konnte den Tarif nicht erneuern. Das Angebot ist abgelaufen und wurde du msgid "Unable to update the plan. The plan has ended." msgstr "Konnte den Tarif nicht erneuern. Das Angebot wurde beendet." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -217,14 +220,14 @@ msgstr "Dein Tarif hat bereits {licenses} Lizenzen im aktuellen Abrechnungszeitr msgid "You cannot decrease the licenses in the current billing period." msgstr "Du kannst die Anzahl der Lizenzen im aktuellen Abrechnungszeitraum nicht reduzieren." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Dein Tarif sieht bereits vor, mit {licenses_at_next_renewal} verlängert zu werden." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Es gibt nichts zu ändern." @@ -236,7 +239,7 @@ msgstr "Du bist kein Kunde dieser Organisation!" msgid "Session not found" msgstr "Session nicht gefunden" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Muss ein Rechnungs-Administrator oder Eigentümer der Organisation sein." @@ -286,7 +289,7 @@ msgid "" msgstr "\n Sollte dieser Fehler unerwartet kommen, bitte\n den Support kontaktieren.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Interner Serverfehler" @@ -588,9 +591,9 @@ msgstr "Rechnungsstatus" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -608,9 +611,9 @@ msgstr "Preise ansehen" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Zulip selbst hosten" @@ -620,9 +623,9 @@ msgstr "Zulip selbst hosten" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Förderung anfragen" @@ -885,51 +888,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Registrieren mit %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Bestätige deine E-Mail-Adresse" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Danke für deine Anmeldung!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Prüfe deine E-Mail (%(email)s), damit wir beginnen können." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Immer noch keine E-Mail? Wir können sie erneut senden." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Schau, um sicher zu gehen, auch in deinem Spamordner nach." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Wenn diese Nachricht nicht verschwindet, versuche, die Seite neu zu laden." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Kann keine Verbindung zu Zulip aufbauen." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Updates könnten verzögert werden." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Versuche es bald wieder..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Jetzt versuchen." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Nachrichten" @@ -1177,6 +1180,159 @@ msgstr "Normale Nutzer" msgid "Digest" msgstr "Zusammenfassung" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Gratulation, du hast eine neue Zulip-Demo-Organisation erstellt. Bitte\n denke daran, dass diese Organisation in 30 Tagen automatisch gelöscht wird. Erfahre hier \n mehr über Demo-Organisationen!\n " + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Gratulation, du hast eine neue Zulip-Organisation\n erstellt: %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Willkommen bei Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "Du bist der Zulip-Organisation %(realm_name)s beigetreten." + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "Du benötigst die folgenden Angaben zum Anmelden in den Mobil- und Desktop-Apps:" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL der Organisation: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Dein Nutzername: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Benutze deinen LDAP-Account zum Einloggen" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "E-Mail-Adresse deines Kontos: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Zur Organisation gehen" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "Wenn du neu bei Zulip bist, schau dir doch einmal unsere Startanleitung an!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "Wir haben auch einen Leitfaden, wie du du deine Organisation einrichtest." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s auf Zulip: Details zu deiner neuen Organisation" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s auf Zulip: Details zu deinem neuen Account" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr " Gratulation, du hast eine neue Zulip-Demo-Organisation erstellt. Bitte denke daran, dass diese Organisation in 30 Tagen automatisch gelöscht wird. Erfahre hier mehr über Demo-Organisationen: %(demo_organizations_help_link)s!" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Gratulation, du hast eine neue Zulip-Organisation erstellt: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Du bist der Zulip-Organisation %(realm_name)s beigetreten." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "Du benötigst die folgenden Angaben zum Anmelden in den Mobil- und Desktop-Apps (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "Wenn du neu bei Zulip bist, schau dir doch einmal unsere Startanleitung (%(getting_user_started_link)s) an!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "Wir haben auch eine Anleitung, wie man seine eigene Organisation einrichtet (%(getting_organization_started_link)s)." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1184,6 +1340,39 @@ msgstr "Zusammenfassung" msgid "Hi," msgstr "Hallo," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Solltest du diese Änderung nicht veranlasst haben, setze dich bitte gleich über %(support_email)s mit uns in Verbindung." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Falls du diese Änderung nicht vorgenommen hast, kontaktiere uns bitte sofort unter <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1197,23 +1386,10 @@ msgstr "Wir haben eine Anfrage erhalten, die E-Mail-Adresse für den Zulip-Accou msgid "Confirm email change" msgstr "Änderung der E-Mail-Adresse bestätigen" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Solltest du diese Änderung nicht veranlasst haben, setze dich bitte gleich über %(support_email)s mit uns in Verbindung." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Bestätige deine neue E-Mail-Adresse." - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Falls du diese Änderung nicht vorgenommen hast, kontaktiere uns bitte sofort unter <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1267,17 +1443,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1382,225 +1547,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Deine E-Mail-Adresse %(email)s hat bei den folgenden, von %(external_host)s gehosteten Zulip-Organisationen Accounts:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Gratulation, du hast eine neue Zulip-Demo-Organisation erstellt. Bitte\n denke daran, dass diese Organisation in 30 Tagen automatisch gelöscht wird. Erfahre hier \n mehr über Demo-Organisationen!\n " - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Gratulation, du hast eine neue Zulip-Organisation\n erstellt: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Willkommen bei Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "Du bist der Zulip-Organisation %(realm_name)s beigetreten." - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "Du benötigst die folgenden Angaben zum Anmelden in den Mobil- und Desktop-Apps:" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL der Organisation: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Dein Nutzername: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Benutze deinen LDAP-Account zum Einloggen" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "E-Mail-Adresse deines Kontos: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Zur Organisation gehen" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "Wenn du neu bei Zulip bist, schau dir doch einmal unsere Startanleitung an!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "Wir haben auch einen Leitfaden, wie du du deine Organisation einrichtest." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s auf Zulip: Details zu deiner neuen Organisation" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s auf Zulip: Details zu deinem neuen Account" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr " Gratulation, du hast eine neue Zulip-Demo-Organisation erstellt. Bitte denke daran, dass diese Organisation in 30 Tagen automatisch gelöscht wird. Erfahre hier mehr über Demo-Organisationen: %(demo_organizations_help_link)s!" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Gratulation, du hast eine neue Zulip-Organisation erstellt: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Du bist der Zulip-Organisation %(realm_name)s beigetreten." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "Du benötigst die folgenden Angaben zum Anmelden in den Mobil- und Desktop-Apps (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "Wenn du neu bei Zulip bist, schau dir doch einmal unsere Startanleitung (%(getting_user_started_link)s) an!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "Wir haben auch eine Anleitung, wie man seine eigene Organisation einrichtet (%(getting_organization_started_link)s)." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Beispiele für kurze Themen" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Gehe zu Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1685,14 +1631,14 @@ msgstr "Diese Einladung verfällt in zwei Tagen. Wenn die Einladung verfallen is #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1724,21 +1670,45 @@ msgid "" msgstr "Du empfängst dies, da @%(mentioned_user_group_name)s erwähnt wurde." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Du empfängst dies, da jeder in %(stream_name)s erwähnt wurde." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Du empfängst dies, da du E-Mail-Benachrichtigungen für #%(stream_name)s aktiviert hast." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1746,21 +1716,21 @@ msgid "" "preferences." msgstr "Antworte direkt auf diese E-Mail, sieh sie dir in %(realm_name)s - Zulip an oder bearbeite die E-Mail-Einstellungen." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "In %(realm_name)s - Zulip ansehen oder antworten oder E-Mail-Einstellungen bearbeiten." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "In %(realm_name)s - Zulip antworten oder die E-Mail-Einstellungen bearbeiten." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1803,29 +1773,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nDiese E-Mail enthält keine Inhalte von Nachrichten, da du die Option, Nachrichteninhalte in E-Mail-Benachrichtigungen darzustellen, abgewählt hast.\nSiehe %(alert_notif_url)s für weitere Details dazu.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Antworte direkt auf diese E-Mail oder sieh sie dir in %(realm_name)s - Zulip an:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "In %(realm_name)s - Zulip ansehen oder antworten:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "In %(realm_name)s - Zulip antworten:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nAntworte nicht auf diese E-Mail. Dieser Zulip-Server ist nicht dafür eingerichtet, eingehende E-Mails zu akzeptieren. Hilfe:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "E-Mail-Einstellungen verwalten:" @@ -1988,6 +1958,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2016,6 +1994,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Beispiele für kurze Themen" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Gehe zu Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2404,7 +2454,7 @@ msgid "Incoming webhooks" msgstr "Eingehende Webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interaktive Bots" @@ -2904,292 +2954,295 @@ msgid "" " " msgstr "\n Du kannst auch die Zulip Desktop-App verwenden.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "Anmeldungen" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} hat sich gerade bei Zulip angemeldet. (gesamt: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} hat deine Einladung zum Beitritt in Zulip angenommen!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Ungültige Anordungs-Zuweisung" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Die Feld-ID {id} konnte nicht gefunden werden." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Ungültiger Standard-Stream-Gruppenname '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Standard-Stream-Gruppenname zu lang (Limit: {} Zeichen)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Standard-Stream-Gruppenname '{}' enthält NULL (0x00) Zeichen." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Ungültige Standard-Streamgruppe {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' ist ein Standard-Stream und kann nicht zu '{group_name}' hinzugefügt werden" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Standard-Streamgruppe '{group_name}' existiert bereits" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Der Stream '{stream_name}' existiert bereits in der Standard-Streamgruppe '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Der Stream '{stream_name}' existiert nicht in der Standard-Streamgruppe '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Diese Standard-Streamgruppe heißt bereits '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Standard-Streamgruppe '{}' existiert bereits" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Um Nutzer zu schützen, beschränkt Zulip die Anzahl der Einladungen, die du pro Tag versenden kannst. Da du dieses Limit bereits erreicht hast, wurden keine Einladungen versandt." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Dein Account ist noch zu neu, um Einladungen für diese Organisation verschicken zu können. Frage einen Administrator der Organisation oder einen erfahreneren Nutzer." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Einige E-Mail-Adressen konnten nicht validiert werden, deshalb wurden noch keine Einladungen gesendet." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Kann niemanden mehr einladen." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Einige dieser Adressen sind bereits einem Zulip-Konto zugeordnet, deshalb wurden an diese keine Einladungen gesendet. An alle übrigen wurden Einladungen gesendet!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nichts zu ändern" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Ungültiger propagate_mode ohne Bearbeitung des Themas" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Kann den Inhalt von Nachrichten nicht ändern, während der Stream geändert wird" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Widgets können nicht bearbeitet werden." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} hat dieses Thema als gelöst markiert." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} hat dieses Thema als ungelöst markiert." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Dieses Thema wurde von {user} nach {new_location} verschoben." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Eine Nachricht wurde von {user} aus diesem Thema nach {new_location} verschoben." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} Nachrichten wurden von {user} aus diesem Thema nach {new_location} verschoben." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Dieses Thema wurde von {user} aus {old_location} hierher verschoben." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} Nachrichten wurden von {user} aus {old_location} hierher verschoben." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Das Editieren von Nachrichten ist in deiner Organisation deaktiviert" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Du hast keine Berechtigung, diese Nachricht zu editieren" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Das Editierlimit für diese Nachricht ist ausgelaufen" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Du hast keine Berechtigung zur Nutzung von Platzhalter-Erwähnungen in diesem Stream." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Du hast keine Berechtigung dazu, diese Nachricht zu verschieben" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Du hast keine Berechtigung dazu, diese Nachricht zu verschieben, weil Du keinen Zugriff auf den Stream hast" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "Die Frist, in der der Stream dieser Nachricht bearbeitet werden kann, ist abgelaufen" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Ungültiges Flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Flag nicht änderbar: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Ungültige Nachrichten-Flag-Operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Ungültige Nachricht(en)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Kann Nachricht nicht rendern" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Erwarte genau einen Stream" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Ungültiger Datentyp für Stream" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Ungültiger Datentyp für Empfänger" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Empfängerlisten können E-Mail-Adressen oder Nutzer-IDs enthalten, aber nicht beides." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Dein Bot {bot_identity} hat versucht, eine Nachricht an den Stream mit der ID {stream_id} zu senden, aber es gibt keinen Stream mit dieser ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Dein Bot {bot_identity} hat versucht, eine Nachricht an den Stream {stream_name} zu senden, aber dieser Stream existiert nicht. Klicke [hier]({new_stream_link}), um ihn zu erstellen." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Dein Bot {bot_identity} hat versucht, eine Nachricht an den Stream {stream_name} zu senden. Der Stream existiert, hat aber keine Abonnenten." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." -msgstr "" +msgstr "Direktnachrichten sind in dieser Organisation deaktiviert." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "In dieser Organisation müssen Themen angegeben werden." -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: Der API-Programmierer hat ungültiges JSON gesendet" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reaktion existiert bereits." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Es existiert bereits ein benutzerdefinierter Emoji mit diesem Namen." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3203,8 +3256,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3223,18 +3276,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} hat die [Zugriffsreche](/help/stream-permissions) für diesen Stream von **{old_policy}** zu **{new_policy}** geändert." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3243,38 +3310,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} hat die [Schreibberechtigungen](/help/stream-sending-policy) für diesen Stream geändert:\n\n* **bisherige Berechtigungen**: {old_policy}.\n* **neue Berechtigungen**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} hat den Stream {old_stream_name} in {new_stream_name} umbenannt." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Keine Beschreibung." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} hat die Beschreibung dieses Streams geändert." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Alte Beschreibung" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Neue Beschreibung" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Für immer" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Ab sofort werden Nachrichten in diesem Stream für immer aufbewahrt." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3284,56 +3351,59 @@ msgid "" "{summary_line}" msgstr "{user} hat den [Zeitraum für das Aufbewahren von Nachrichten](/help/message-retention-policy) in diesem Stream geändert:\n* **bisheriger Aufbewahrungszeitraum**: {old_retention_period}\n* **neuer Aufbewahrungszeitraum**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Du kannst keine Unternachricht an diese Nachricht anhängen." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Ungültige Nutzer-ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Nutzergruppe '{}' existiert bereits." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Diese API ist nicht zugänglich für \"Incoming Webhook\"-Bots." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Der Account gehört nicht zu dieser Subdomain" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Dieser Endpunkt akzeptiert keine Bot-Anfragen." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Muss ein Serveradministrator sein" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Unzureichende Berechtigungen" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Dieser Endpunkt benötigt HTTP Basic Authentication." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Ungültiger Authorization Header für Basic Auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Fehlender Authentifikations-Header für Basic Auth." -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook-Bots können nur auf Webhooks zugreifen" @@ -3348,95 +3418,101 @@ msgstr "Dein Account {username} wurde deaktiviert. Bitte setze dich mit dem Admi msgid "The password is too weak." msgstr "Das Passwort ist zu schwach." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomain muss mindestens 3 Zeichen lang sein." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Die Subdomain darf nicht mit einem '-' beginnen oder enden." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Die Subdomain darf nur Kleinbuchstaben, Zahlen und '-' enthalten." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Die Subdomain ist nicht verfügbar. Bitte wähle eine andere." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Bitte benutze deine echte E-Mail-Adresse." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Die Organisation, der du mit der E-Mail-Adresse {email} beitreten willst, existiert nicht." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Bitte frage den Administrator der Organisation nach einer Einladung für {email}." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Deine E-Mail-Adresse {email} gehört zu keiner der für die Registrierung bei dieser Organisation erlaubten Domains." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "E-Mail-Adressen, die + enthalten, sind in dieser Organisation nicht erlaubt." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Derzeit können keine neuen Mitglieder dieser Organisation beitreten, da alle Zulip-Lizenzen aufgebraucht sind. Bitte kontaktiere die Person, die dich eingeladen hat, und bitte sie darum, die Anzahl der Lizenzen zu erhöhen, und dann versuche es wieder." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Neues Passwort" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Neues Passwort bestätigen" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Du machst zu viele Versuche, dich anzumelden. Bitte versuche es in {} erneut oder setze dich mit dem Administrator deiner Organisation in Verbindung, wenn du Hilfe brauchst." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Dein Passwort wurde deaktiviert, weil es zu schwach ist. Setze dein Passwort zurück, um ein neues zu erstellen." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Bitte gib höchstens 10 E-Mail-Adressen ein." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Wir konnten diese Zulip-Organisation nicht finden." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Ungültige E-Mail-Adresse '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3500,31 +3576,31 @@ msgstr "Subdomains dürfen nicht mit einem '-' anfangen oder enden." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domains dürfen nur Buchstaben, Zahlen, '.' und '-' enthalten." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Zeitstempel darf nicht negativ sein" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Thema darf keine Null-Bytes enthalten" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Muss genau 1 Stream-ID für Stream-Nachrichten angeben" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Der Nutzer hat die Synchronisierung der Entwürfe deaktiviert." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Entwurf existiert nicht" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Öffne Zulip, um den Inhalt des Spoilers zu sehen" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip-Benachrichtigungen" @@ -3557,166 +3633,166 @@ msgstr "Hat schon ein Konto." msgid "Account has been deactivated." msgstr "Account wurde deaktiviert." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Das Emoji '{}' existiert nicht" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Ungültiger benutzerdefinierter Emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Ungültiger Name für einen benutzerdefinierten Emoji." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Dieser benutzerdefinierte Emoji wurde deaktiviert." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Ungültiger Emoji-Code." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Ungültiger Emoji-Name." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Ungültiger Emoji-Typ." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Muss ein Organisations-Administrator oder Emoji-Autor sein." -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "Namen von Emojis müssen entweder mit einem Buchstaben oder mit einer Zahl enden." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "Namen von Emojis dürfen nur aus Kleinbuchstaben ohne Umlauten, Zahlen, Leerzeichen, Strichen und Unterstrichen bestehen." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emoji-Bezeichnung fehlt" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Kann Ereigniskette nicht zuteilen" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Nicht angemeldet: API-Authentifizierung oder Nutzer-Session benötigt" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Stream '{stream}' existiert nicht" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Stream mit ID '{stream_id}' existiert nicht" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Eigentümer der Organisation" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "Nutzer" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Mindestens eine/r/s {entity} muss aktiviert bleiben." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Ungültiges Markdown-Include-Statement: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API-Nutzungsrate überschritten" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Fehlerhaftes JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Muss ein Mitglied der Organisation sein" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Muss ein Administrator der Organisation sein" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Muss ein Eigentümer der Organisation sein" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Entweder ist dein Nutzername oder dein Passwort falsch." -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Account ist deaktiviert" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Diese Organisation wurde deaktiviert" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Die Registrierung für die mobilen Push-Benachrichtigungen wurde für deinen Server deaktiviert" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "In dieser Organisation ist die Authentifikation mit Passwort ausgeschaltet." -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Dein Passwort wurde deaktiviert und muss zurückgesetzt werden." -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Ungültiger API-Schlüssel" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Inkorrekter API-Schlüssel" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Das '{event_type}'-Event wird momentan durch den {webhook_name}-Webhook nicht unterstützt." +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Konnte die Anfrage nicht parsen: Hat {webhook_name} dieses Ereignis generiert?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Ungültige Subdomain" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Zugang verweigert" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3724,6 +3800,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reaktion existiert bereits." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reaktion existiert nicht." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitter-Benutzername" @@ -3765,8 +3849,8 @@ msgid "Settings" msgstr "Einstellungen" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Gehe zu den Einstellungen, um deine Benachrichtigungen und Display-Einstellungen zu konfigurieren." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3778,264 +3862,272 @@ msgid "" "and give it a go!" msgstr "Klicke hier, um eine neue Unterhaltung zu starten. Wähle ein Thema (2-3 Wörter sind optimal) und probiere es aus!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integrations-Frameworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Kontinuierliche Integration" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Kundenbetreuung" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Softwarebereitstellung" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Entertainment" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Kommunikation" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finanzen" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Personal" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Verschiedenes" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Monitoring" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Projektmanagement" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produktivität" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Versionsverwaltung" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Nachricht kann nicht leer sein" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Nachricht darf keine Null-Bytes enthalten" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operator {} wird nicht unterstützt." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Ungültiger Begrenzungs-Operator: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Fehlendes 'anchor'-Argument" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Ungültiger Anker" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Wenn du neu bei Zulip bist, schau dir doch einmal unsere [Startanleitung]({getting_started_url}) an!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Hallo, und willkommen bei Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Ich kann dir auch dabei behilflich sein, alles einzurichten! Klicke einfach irgendwo auf diese Nachricht oder betätige `r`, um zu antworten." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Hier sind ein paar Nachrichten, die ich verstehe:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Geh zu den [Profileinstellungen](#settings/profile), um ein [Profilbild](/help/change-your-profile-picture) hinzuzufügen und deine [Profilinformation](/help/edit-your-profile) zu bearbeiten." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Geh zu den [Anzeigeeinstellungen](#settings/display-settings), um [zwischen hellem und dunklem Theme umzuschalten](/help/dark-theme), [dein bevorzugtes Emoji-Theme](/help/emoji-and-emoticons#change-your-emoji-set) einzustellen, [deine Sprache zu wechseln](/help/change-your-language) und weitere Einstellungen für deine persönliche Zulip-Erfahrung vorzunehmen." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Bei Zulip sind es die Streams, die [bestimmen, wer eine Nachricht erhält](/help/streams-and-topics). Sie sind vergleichbar mit Kanälen bei anderen Chat-Apps." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Streams ansehen und abonnieren](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "Bei Zulip enthalten Themen [eine Angabe darüber, worum es in einer Nachricht geht](/help/streams-and-topics). Sie sind also wie kurze Betreffzeilen, ganz ähnlich wie die Betreffzeile einer E-Mail." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Die [Tastenkürzel](#keyboard-shortcuts) bei Zulip helfen dir bei der schnellen und effizienten Navigation." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Drücke `?`, egal wann, um eine Art [Spickzettel](#keyboard-shortcuts) anzuzeigen." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip nutzt [Markdown](/help/format-your-message-using-markdown), ein intuitives Format für **fett**, *kursiv*, Stichpunktlisten und mehr. Klicke [hier](#message-formatting), um dazu einen Spickzettel anzuzeigen." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Schau dir unsere [Tipps zur Nachrichtenerstellung](/help/messaging-tips) an, um etwas über Emoji-Reaktionen, Code-Blöcke und vieles mehr zu erfahren!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Schau dir unsere [Starthilfe](/help/getting-started-with-zulip) an oder sieh dich im [Hilfecenter](/help/) um, um mehr zu erfahren!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Tut mir leid, ich habe deine Nachricht nicht verstanden. Bitte versuche es mit einem der folgenden Befehle:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Dies ist ein privater Stream, wie an dem Schloss-Icon neben dem Streamnamen zu erkennen ist." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Private Streams sind nur für Mitglieder dieser Streams sichtbar." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Um diesen Stream zu verwalten, gehe zu den [Einstellungen des Streams]({stream_settings_url}) und klicke auf `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Dies ist eine Nachricht im Stream #**{default_notification_stream_name}** mit dem Thema `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Themen sind ein einfaches Tool, mithilfe dessen man Unterhaltungen geordnet halten kann." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "In [Streams und Themen]({about_topics_help_url}) kannst du mehr über Themen lernen." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Dies ist eine Nachricht im Stream #**{default_notification_stream_name}** mit dem Thema `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4050,669 +4142,758 @@ msgstr "Ungültige JSON-Antwort" msgid "Invalid response format" msgstr "Ungültiges Format der Antwort" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Ungültiger GCM Parameter zum Bouncer: Priorität {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Ungültige GCM Parameter zum Bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token existiert nicht" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "In dieser Organisation wurde die Option, Nachichteninhalte über mobile Push-Benachrichtigungen einzuschließen, deaktiviert." -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} hat @{user_group_name} erwähnt:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} hat dich erwähnt:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} hat alle erwähnt:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Nutzer nicht autorisiert für diese Anfrage" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' verwendet Zulip nicht mehr." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push-Notification-Bouncer Fehler: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Kann nicht zwischen den Parametern '{var_name1}' und '{var_name2}' entscheiden" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Fehlendes Argument '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Ungültiger Wert für '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Fehlerhafter Payload" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argument \"{}\" ist kein gültiges JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Account-Sicherheitsdienst" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Nur Administratoren dieser Organisation können in diesem Stream schreiben." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Nur Administratoren der Organisation und Moderatoren können Nachrichten an diesen Stream senden." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Gäste dürfen keine Nachrichten an diesen Stream schicken." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Neue Mitglieder können nicht an diesen Stream senden." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Nicht berechtigt, um an Stream '{}' zu senden" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Bitte 'stream' angeben." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Bitte wähle eins aus: 'stream' oder 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Ungültige Stream-ID" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Der Streamname '{}' ist bereits vergeben." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Ungültiger Stream Name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Steam(s) ({}) nicht vorhanden" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Im Netz veröffentlichte Streams sind nicht aktiviert." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Standard-Streamgruppe mit ID '{}' existiert nicht" +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Der Name des Streams kann nicht leer bleiben!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Stream-Name zu lang (Limit: {} Zeichen)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Ungültiges Zeichen im Namen des Streams an Position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Das Thema kann nicht leer bleiben!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Ungültiges Zeichen im Thema an Position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Daten zu Mitgliedern dieses Streams nicht verfügbar" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Kann Abonnenten für den privat Stream nicht laden" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} ist kein Boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} ist kein Datum" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} ist kein Dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} ist kein Float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} ist zu klein" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} ist kein Integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} ist zu groß" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} ist keine Liste" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Ungültige {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} ist zu lang (Limit: {max_length} Zeichen)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} ist kein String" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Dieser Upload würde das Upload-Budget deiner Organisation überschreiten." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Konnte das Bild nicht dekodieren; hast du eine Bilddatei hochgeladen?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Bildgröße überschreitet das Limit." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Defektes animiertes Bild." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Unbekanntes Format des animierten Bildes." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Ungültige Nutzergruppe" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "Ungültige Nutzergruppen-ID: {}" - -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' muss eine System-Nutzergruppe sein." - -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." -msgstr "Die '{}'-Einstellung kann nicht der Gruppe '@role:internet' zugeordnet werden." - -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." -msgstr "Die '{}'-Einstellung kann nicht der Gruppe '@role:owners' zugeordnet werden." - -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." +msgstr "" + +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." +msgstr "" + +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "" + +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" + +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Name zu lang!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Name zu kurz!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Ungültige Zeichen im Namen!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Ungültiges Format!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Dieser Name wird schon verwendet!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Schlechter Name oder Nutzername" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Ungültige Integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Fehlende Konfigurationsparameter: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Ungültiger {}-Wert {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Ungültige Konfigurationsdaten!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Ungültiger Bottyp" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Ungültiger Interface-Typ" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Ungültige Nutzer-ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Bot nicht vorhanden" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Nutzer nicht vorhanden" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Nutzer ist deaktiviert" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} ist kein String" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} darf nicht leer sein." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Ungültige {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} ist zu lang (Limit: {max_length} Zeichen)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} hat die ungültige Länge {length}; korrekt ist {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} ist keine bekannte Zeitzone." -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} ist kein Datum" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} ist kein Integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} ist zu klein" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} ist zu groß" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} ist kein Float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} ist kein Boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} ist kein gültiger Hex-Farbcode" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} ist keine Liste" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} sollte genau aus {length} Elementen bestehen" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} ist kein Dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "Der Key {key_name} fehlt in {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Unerwartete Argumente: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} ist kein allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} ist falsch)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} ist keine URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "Das URL-Muster muss '%(username)s' enthalten." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' darf nicht leer sein." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Das Feld darf keine doppelten Auswahloptionen haben." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' ist keine gültige Option für '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} ist kein String oder Integer-Liste" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} ist kein String oder Integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} hat keine Länge" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} fehlt" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Der HTTP-Eventheader '{header}' fehlt" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Der {}-Webhook erwartet die Zeitangabe in Millisekunden." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Das zcommand sollte einen vorangestellten Schrägstrich enthalten." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Befehl {} nicht gefunden." +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF-Fehler: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "Stream-Ereignisse" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Auf Zulip Cloud Standard verfügbar. Upgraden, um darauf zuzugreifen." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Der Emoji-Name enthält ungültige Zeichen" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Falscher regulärer Ausdruck: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Fehler: Unbekannter regulärer Ausdruck" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Die pygments Sprache enthält ungültige Zeichen" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Administratoren, Moderatoren, Mitglieder und Gäste" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Administratoren, Moderatoren und Mitglieder" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Admins und Moderatoren" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "nur Admins" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Niemand" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Eigentümer der Organisation" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrator der Organisation" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderator" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Mitglied" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Gast" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "öffentlich im Netz" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Öffentlich" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Privat, geteilter Verlauf" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Privat, geschützter Verlauf" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Öffentlich, geschützter Verlauf" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Alle Stream-Mitglieder können posten" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Nur Administratoren der Organisation können posten" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Nur Administratoren und Moderatoren von Organisationen dürfen Beiträge verfassen." -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Nur vollständige Mitglieder der Organisation können posten" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode Emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Benutzerdefinierte Emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip Extra-Emoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Nutzer mit ID {} ist deaktiviert" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Nutzer mit ID {} ist ein Bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Liste von Optionen" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Personenauswahl" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Kurzer Text" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Langer Text" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Datumsauswahl" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Externer Account" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronomen" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Unbekannte IP-Adresse" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "ein unbekanntes Betriebssystem" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Ein unbekannter Browser" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Argument 'query_id' fehlt" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Argument 'last_event_id' fehlt" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Ein neueres Ereignis als {event_id} ist bereits entfernt worden!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Ereignis {event_id} war nicht in dieser Warteschlange enthalten." @@ -4780,89 +4961,123 @@ msgstr "Es gibt schon ein Feld mit dieser Beschriftung." msgid "Default custom field cannot be updated." msgstr "Nutzerdefiniertes Standard-Feld kann nicht aktualisiert werden." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Dieser Endpunkt ist im Betriebsmodus nicht verfügbar." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend ist nicht aktiviert." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Ungültiger '{}'-Parameter für anonyme Anfrage" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Unbekannter Hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Du musst mindestens eine E-Mail-Adresse angeben." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Stream mit ID: {} existiert nicht. Es wurden keine Einladungen versendet." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Keine solche Einladung" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "Die Einladung wurde bereits widerrufen." -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "Ungültige Stream-ID {}. Es wurden keine Einladungen versendet." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Die Anzeige des Bearbeitungsverlaufs von Nachrichten ist in dieser Organisation deaktiviert" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Du hast keine Berechtigung dazu, diese Nachricht zu löschen" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Das Zeitlimit für das Entfernen dieser Nachricht ist überschritten" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Nachricht ist bereits gelöscht" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Zu viele Nachrichten angefordert (Maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "Der Anker kann nur am Ende des Bereichs ausgeschlossen werden" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Kein Thema '{}' vorhanden" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Fehlender Absender" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mirroring ist nicht erlaubt mit Empfänger-Nutzer-IDs" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Ungültige gespiegelte Nachricht" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr-Spiegelung ist in dieser Organisation nicht erlaubt" @@ -4878,27 +5093,28 @@ msgstr "Nutzer ist schon stummgeschaltet." msgid "User is not muted" msgstr "Nutzer ist nicht stummgestellt." -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Anwesenheitsinformationen werden bei Bots nicht unterstützt." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Keine Anwesenheitsdaten für {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Der Client hat keine neuen Werte übertragen." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Der Client muss emoji_name mitsenden, wenn er entweder emoji_code oder reaction_type sendet." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Ungültiger Status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4914,37 +5130,37 @@ msgid "" "emoji_code" msgstr "Mindestens eines der folgenden Argumente muss gegeben sein: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reaktion existiert nicht." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Empfangsbestätigungen sind in dieser Organisation deaktiviert." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Ungültige Sprache '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Es muss mindestens eine Authentifizierungs-Möglichkeit aktiviert sein." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Ungültiger video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Ungültiges giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Muss eine Demo-Organisation sein." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Ungültige Domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4956,42 +5172,43 @@ msgstr "Die Domain {domain} gehört schon zu deiner Organisation." msgid "No entry found for domain {domain}." msgstr "Keinen Eintrag für die Domain {domain} gefunden." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Du musst genau eine Datei hochladen." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Nur Administratoren können die Standard-Emoji überschreiben." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Deine hochgeladene Datei ist größer als das Maximum von {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Überschreitung des Grenzwertes." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Bitte fordere von {email} einen manuellen Export an." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Ungültige Daten-Export-ID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Export ist bereits gelöscht" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4999,7 +5216,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Du musst genau ein Icon hochladen." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier nicht gefunden." @@ -5007,107 +5224,100 @@ msgstr "Linkifier nicht gefunden." msgid "You must upload exactly one logo." msgstr "Du must genau ein Logo hochladen." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Ungültige Spielwiese" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Nutzer nicht authorisiert, Queries im Namen von '{principal}' auszuführen" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Private Streams können nicht als Standard gesetzt werden." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Du musst \"new_description\" oder \"new_group_name\" übergeben." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Ungültiger Wert für \"op\". Gib \"add\" oder \"remove\" an." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Standardstreams können nicht in private Streams umgewandelt werden." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Der Stream hat schon diesen Namen!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Es gibt nichts zu tun. Gib mindestens \"add\" oder \"delete\" an." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} hat dich zum Stream {stream_name} hinzugefügt." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} hat dich zu den folgenden Steams hinzugefügt:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Kann auf Stream ({stream_name}) nicht zugreifen." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Du kannst andere Zephyr-Mirroring-Nutzer nur zu privater Streams einladen." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} hat die folgenden Streams angelegt: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} hat den neuen Stream {stream_str} angelegt." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "Neue Streams" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** Stream erstellt von {user_name}. **Beschreibung:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Unbekannte Abonnementeigenschaft: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Stream mit ID {} ist nicht abonniert" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Ungültiges JSON für Subnachricht" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Du bist nicht dazu autorisiert, auf diese Datei zuzugreifen.

" @@ -5123,97 +5333,108 @@ msgstr "Der Nutzer hat die Schreibbenachrichtigungen für Stream-Nachrichten abg msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Datei nicht gefunden.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Ungültiger Token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Ungültiger Dateiname" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Du musst mindestens eine Datei zum Hochladen auswählen" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Du kannst nur eine Datei auf einmal hochladen" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Keine neuen Daten übergeben" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Nutzer {user_id} ist bereits ein Mitglied dieser Gruppe" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Es gibt keinen Nutzer '{}' in dieser Nutzergruppe" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Die Nutzergruppe {group_id} ist bereits eine Untergruppe dieser Gruppe." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Die Nutzergruppe {group_id} ist keine Untergruppe dieser Gruppe." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Änderungen am Avatar sind in dieser Organisation deaktiviert." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Die Änderung von E-Mail-Adressen ist für diese Organisation deaktiviert." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Ungültige default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Ungültiger Benachrichtigungs-Ton: '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Ungültiger E-Mail-Batching-Zeitraum: {} Sekunden" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Dein Zulip-Passwort wird von LDAP verwaltet" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Falsches Passwort!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Du brauchst zu viele Versuche! Versuche es wieder in {} Sekunden." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Neues Passwort ist zu schwach!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Du musst genau einen Avatar hochladen." @@ -5260,6 +5481,10 @@ msgstr "Ungültiger Name für einen eingebetteten Bot." msgid "Username already in use" msgstr "Nutzername wird bereits verwendet" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5270,8 +5495,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Wegwerf-E-Mail-Adressen sind in dieser Organisation nicht erlaubt" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "E-Mail-Adresse '{}' wird schon verwendet" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5289,27 +5515,27 @@ msgstr "Ungültiger Zoom-Session-Identifier" msgid "Invalid Zoom credentials" msgstr "Ungültige Zoom-Zugangsdaten" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Konnte keinen Anruf über Zoom erstellen" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton wurde noch nicht konfiguriert." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Ungültige Signatur." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Fehler bei der Verbindung zum BigBlueButton-Server." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Fehler bei der Authentifikation am BigBlueButton-Server." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Der BigBlueButton-Server gab eine unerwartete Fehlermeldung zurück." @@ -5329,28 +5555,28 @@ msgstr "Ungültiger Kerberos-Cache" msgid "We were unable to set up mirroring for you" msgstr "Wir konnten für dich leider kein Mirroring erstellen" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "Projekte, welche diesen Anbieter für Versionsverwaltung nutzen, werden nicht unterstützt" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Ungültige Payload" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Unbekannte Webhook-Anfrage" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Thema kann nicht leer sein" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Inhalt kann nicht leer sein" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Fehlerhafte JSON-Eingabe" @@ -5369,7 +5595,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Der newrelic-Webhook erfordert, dass state eines von [created|activated|acknowledged|closed] ist" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "Events-Key fehlt im Payload" @@ -5377,19 +5603,20 @@ msgstr "Events-Key fehlt im Payload" msgid "Unable to handle Pivotal payload" msgstr "Pivotal Payload konnte nicht bearbeitet werden" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Fehler: channels_map_to_topics hat einen anderen Wert als 0 oder 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Nachricht von Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Unbekannte WordPress Webhook-Action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5406,47 +5633,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Muss mit gültigem Zulip-Server-API-Schlüssel validiert werden." #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Ungültige UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Ungültiger Token-Typ" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} ist kein gültiger Hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Fehlende user_id oder user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Ungültige Eigenschaft {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Die Daten sind nicht in Ordnung." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Unzulässige Daten." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Du musst dein Passwort zurücksetzen." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Fehlende id_token Parameter" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Ungültiges OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Es geht nicht, gleichzeitig sowohl mobile_flow_otp als auch desktop_flow_otp zu benutzen." diff --git a/locale/de/translations.json b/locale/de/translations.json index 31c1ac0d04..62c48382dd 100644 --- a/locale/de/translations.json +++ b/locale/de/translations.json @@ -1,10 +1,11 @@ { "%'{file}' exceeds the maximum file size for attachments ({variable} MB).": "%'{file}' übersteigt die maximale Größe für Dateianhänge von ({variable} MB).", - "(attached file)": "", + "(attached file)": "(angehängte Datei)", "(forever)": "(für immer)", "(hidden)": "(verborgen)", "(no description)": "(keine Beschreibung)", "(no topic)": "(kein Thema)", + "(or )": "", "(you)": "(du)", "({message_retention_days} days)": "({message_retention_days} Tage)", "/dark (Switch to the dark theme)": "/dark (zum dunklen Theme wechseln)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} hat diesen Stream nicht abonniert und wird nur Benachrichtigungen erhalten, solltest du diese Person zu dem Stream hinzufügen.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} hat {number_of_invites_by_user} noch nicht abgelaufene Einladungen.", "Subscribe": "Abonnieren", - "Click here to learn about exporting private streams and messages.": "Hier klicken, um zu erfahren, wie man private Streams und Nachrichten exportiert.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Upgrade für mehr Platz.", " to add a new line": ", um eine neue Zeile einzufügen", " to send": " zum Absenden", @@ -58,17 +59,17 @@ "Action": "Aktion", "Actions": "Aktionen", "Active": "Aktiv", - "Active an hour ago": "", + "Active an hour ago": "Vor einer Stunde aktiv", "Active bots": "Aktive Bots", - "Active more than 2 weeks ago": "", + "Active more than 2 weeks ago": "Vor mehr als 2 Wochen aktiv", "Active now": "Jetzt aktiv", "Active users": "Aktive Nutzer", - "Active yesterday": "", - "Active {days_old} days ago": "", - "Active {hours} hours ago": "", - "Active {last_active_date}": "", - "Active {minutes} minutes ago": "", - "Activity unknown": "", + "Active yesterday": "Gestern aktiv", + "Active {days_old} days ago": "Vor {days_old} Tagen aktiv", + "Active {hours} hours ago": "Zuletzt aktiv vor {hours} Stunden", + "Active {last_active_date}": "Zuletzt aktiv {last_active_date}", + "Active {minutes} minutes ago": "Zuletzt aktiv vor {minutes} Minuten", + "Activity unknown": "Aktivität unbekannt", "Add": "Hinzufügen", "Add GIF": "GIF einfügen", "Add a new alert word": "Füge ein neues Signalwort hinzu", @@ -82,15 +83,18 @@ "Add alert word": "Füge ein Signalwort hinzu", "Add all users": "Alle Nutzer hinzufügen", "Add another user...": "Noch einen Nutzer hinzufügen...", + "Add audio call": "", "Add code playground": "Code-Spielwiese hinzufügen", + "Add default streams": "", + "Add email": "", "Add emoji": "Emoji hinzufügen", "Add emoji reaction": "Emoji-Reaktion hinzufügen", "Add extra emoji for members of the {realm_name} organization.": "Zusätzliches Emoji für die Mitglieder der Organisation {realm_name} hinzufügen.", "Add global time": "Ein globales Theme hinzufügen", "Add linkifier": "Linkifier hinzufügen", "Add members": "Mitglieder hinzufügen", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Mitglied hinzufügen…", - "Add new default stream": "Neuen Standardstream hinzufügen", "Add new user group": "Neue Nutzergruppe hinzufügen", "Add one or more users": "Einen oder mehrere Nutzer hinzufügen", "Add option": "Option hinzufügen", @@ -101,12 +105,13 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Abonnenten hinzufügen. Gib eine Nutzergruppe oder einen #Streamnamen an, um mehrere Abonnenten hinzuzufügen.", "Add task": "Aufgabe hinzufügen", "Add video call": "Videoanruf hinzufügen", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Erfolgreich hinzugefügt!", "Added successfully.": "Hinzufügen erfolgreich.", "Administrator": "Administrator", - "Administrators and moderators this Zulip organization will be able to see this email address.": "", + "Administrators and moderators this Zulip organization will be able to see this email address.": "Administratoren und Moderatoren dieser Zulip-Organisation können diese E-Mail-Adresse sehen.", "Administrators can delete any message.": "Administratoren können jede beliebige Nachricht löschen.", - "Administrators of this Zulip organization will be able to see this email address.": "", + "Administrators of this Zulip organization will be able to see this email address.": "Administratoren dieser Zulip-Organisation können diese E-Mail-Adresse sehen.", "Admins": "Admins", "Admins and moderators": "Admins und Moderatoren", "Admins only": "nur Admins", @@ -123,7 +128,8 @@ "Alert words allow you to be notified as if you were @-mentioned when certain words or phrases are used in Zulip. Alert words are not case sensitive.": "Signalwörter erlauben es dir, benachrichtigt zu werden, als ob du durch @-Erwähnung markiert wurdest, wenn bestimmte Wörter oder Formulierungen im Chat verwendet werden. Bei Signalwörtern wird nicht zwischen Groß- und Kleinschreibung unterschieden. ", "Alerted messages": "Signalnachrichten", "All": "Alle", - "All direct messages": "", + "All direct messages": "Alle Direktnachrichten", + "All groups": "", "All messages": "Alle Nachrichten", "All messages including muted streams": "Alle Nachrichten, einschließlich stummgeschalteter Streams", "All streams": "Alle Streams", @@ -136,32 +142,36 @@ "Allow subdomains": "Subdomains erlauben", "Allowed domains": "Erlaubte Domains", "Allowed domains: {domains}": "Erlaubte Domains: {domains}", + "Already members:": "", "Already not subscribed.": "Ist bereits kein Abonnent mehr.", "Already subscribed to {stream}": "Der Stream {stream} ist bereits abonniert", "Already subscribed users:": "Nutzer, die bereits abonniert haben:", + "Already subscribed.": "", "Always": "Immer", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Ein API-Schlüssel kann dazu benutzt werden, programmgesteuert auf einen Zulip-Account zuzugreifen. Jeder mit Zugang zu deinem API-Schlüssel kann deine Nachrichten lesen, Nachrichten in deinem Namen senden, oder sich auf andere Weise als dich ausgeben. Daher schütze deinen API-Schlüssel so wie dein Passwort.
Wir empfehlen, Zulips API über Bots und deren API-Schlüssel anzusprechen, solange es nicht unumgänglich ist, über einen Nutzeraccount zu interagieren.", "An hour ago": "Vor einer Stunde", "An unknown error occurred.": "Ein unbekannter Fehler ist aufgetreten.", - "Announce new stream in": "", + "Announce new stream in": "Stream bekanntgeben in ", "Any organization administrator can conduct an export.": "Jeder Administrator einer Organisation kann einen Export durchführen.", "Any time": "Keine zeitliche Begrenzung", "April": "April", - "Archive ?": "", + "Archive ?": " archivieren?", "Archive stream": "Stream archivieren", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Durch die Archivierung des Streams werden sofort alle Abonnenten ausgetragen. Dies kann nicht rückgängig gemacht werden.", - "Are you sure you want to continue?": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", + "Are you sure you want to continue?": "Bist du sicher, dass du fortfahren möchtest?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Bist du sicher, dass du den Stream ''''{stream_name}'''' mit {count} Nutzern erstellen möchtest?", "Are you sure you want to deactivate this organization?": "Bist du sicher, dass du diese Organisation deaktivieren möchtest?", "Are you sure you want to deactivate your account?": "Bist du sicher, dass du dein Konto deaktivieren möchtest?", "Are you sure you want to delete all drafts? This action cannot be undone.": "Bist du sicher, dass du alle Entwürfe löschen möchtest? Das lässt sich nicht rückgängig machen.", "Are you sure you want to delete your profile picture?": "Bist du sicher, dass du dein Profilbild löschen möchtest?", - "Are you sure you want to mark all messages as read? This action cannot be undone.": "", + "Are you sure you want to mark all messages as read? This action cannot be undone.": "Bist du sicher, dass du alle Nachrichten as gelesen markieren möchtest? Dieser Vorgang kann nicht rückgängig gemacht werden.", "Are you sure you want to mute {user_name}? Messages sent by muted users will never trigger notifications, will be marked as read, and will be hidden.": "Bist du sicher, dass du Nutzer {user_name} stumm schalten möchtest? Nachtrichten von stumm geschalteten Nutzern lösen keine Benachrichtigungen aus, werden als gelesen gekennzeichnet und verborgen.", "Are you sure you want to permanently delete {topic_name}?": "Möchtest du {topic_name} dauerhaft löschen? ", "Are you sure you want to resend the invitation to ?": "Bist du sicher, dass du die Einladung erneut an senden möchtest?", "Are you sure you want to revoke the invitation to {email}?": "Möchtest du die Einladung an {email} wirklich widerrufen?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Möchtest du den erstellten Einladungslink von {referred_by} wirklich widerrufen?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Bist du sicher, dass du eine @-Erwähnung an die {subscriber_count} Benutzer senden willst, die #{stream_name} abonniert haben? Wenn nicht, bearbeite bitte deine Nachricht, um die Erwähnung @{wildcard_mention} zu entfernen.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Möchtest du die Markierungen aller Nachrichten in entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Möchtest du alle Markierungen von Nachrichten aufheben? Dieser Vorgang kann nicht rückgängig gemacht werden.", @@ -174,12 +184,13 @@ "Author": "Autor", "Automated messages and emails": "Automatisierte Nachrichten und E-Mails", "Automatic": "automatisch", - "Automatic (follows system settings)": "", - "Automatically mark messages as read": "", + "Automatic (follows system settings)": "Automatisch (gemäß den Systemeinstellungen)", + "Automatically mark messages as read": "Nachrichten automatisch als gelesen markieren", "Available on Zulip Cloud Standard. Upgrade or request sponsorship to access.": "Verfügbar auf Zulip Cloud Standard. Upgrade oder Förderung anfragen, um Zugriff zu erhalten.", "Avatar changes are disabled in this organization": "Änderungen am Avatar sind in dieser Organisation deaktiviert.", "Avatar from Gravatar": "Avatar von Gravatar", "Back to streams": "Zurück zu den Streams", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Da du der einzige Besitzer der Organisation bist, kannst du dein Konto nicht deaktivieren.", "Because you are the only subscriber, this stream will be automatically archived.": "Da du der einzige Abonnent bist, wird dieser Stream automatisch archiviert.", "Billing": "Abrechnung", @@ -190,8 +201,11 @@ "Bot owner": "Bot-Eigentümer", "Bot type": "Typ", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "Die neuesten Unterhaltungen ansehen", "Browse streams": "Streams durchsuchen", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Business", "Busy": "Beschäftigt", "By deactivating your account, you will be logged out immediately.": "Wenn du deinen Account deaktivierst, wirst du sofort abgemeldet.", @@ -216,40 +230,43 @@ "Clear image": "Bild ändern", "Clear profile picture": "Profilbild entfernen", "Click here to reveal.": "Hier klicken zum Anzeigen.", - "Click on the pencil () icon to edit and reschedule a message.": "", + "Click on the pencil () icon to edit and reschedule a message.": "Klicke auf das Bleistiftsymbol (), um eine Nachricht zu bearbeiten und zu verschieben.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Klicke zum Speichern außerhalb des Eingabefelds. Wir werden automatisch jeden benachrichtigen, der hinzugefügt oder entfernt wurde.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Klicken zum Ansehen oder Herunterladen.", "Close": "Schließen", "Close modal": "Fenster schließen", "Close this dialog window": "Dieses Dialogfenster schließen", "Code playgrounds": "Code-Spielwiese", - "Code playgrounds are interactive in-browser development environments, such as replit, that are designed to make it convenient to edit and debug code. Zulip code blocks that are tagged with a programming language will have a button visible on hover that allows users to open the code block on the code playground site.": "", + "Code playgrounds are interactive in-browser development environments, such as replit, that are designed to make it convenient to edit and debug code. Zulip code blocks that are tagged with a programming language will have a button visible on hover that allows users to open the code block on the code playground site.": "Code-Spielwiesen sind interaktive Entwicklungsumgebungen im Browser, wie z. B. replit, die das Bearbeiten und Debuggen von Code erleichtern. Auf Zulip Codeblöcken, die mit einer Programmiersprache gekennzeichnet sind, erscheint beim Darüberfahren mit der Maus ein Button, mit dem Nutzer den Codeblock auf der Spielwiesen öffnen können.", "Collapse compose": "Nachrichtenerstellung zuklappen", - "Collapse direct messages": "", + "Collapse direct messages": "Direktnachrichten einklappen", "Collapse message": "Nachricht einklappen", "Collapse/show selected message": "Gewählte Nachrichen kollabieren/anzeigen", "Community": "Community", "Commuting": "Unterwegs", "Compact": "Kompakt", "Complete": "Fertig", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Vervollständige das Organisationsprofil, um dieser Zulip-Organisation eine Marke zu verleihen und ihren Zweck zu erläutern.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Nachricht verfassen", "Compose your message here": "Erstelle hier deine Nachricht", "Compose your message here...": "Erstelle hier deine Nachricht...", "Composing messages": "Nachrichten verfassen", "Configure how Zulip notifies you about new messages.": "Stelle ein, wie Zulip dich über neue Nachrichten informiert.", - "Configure regular expression patterns that will be used to automatically transform any matching text in Zulip messages and topics into links.": "", + "Configure regular expression patterns that will be used to automatically transform any matching text in Zulip messages and topics into links.": "Konfiguriere reguläre Ausdrücke, die verwendet werden, um übereinstimmenden Text in Zulip-Nachrichten und -Themen automatisch in Links umzuwandeln.", "Configure the default personal preference settings for new users joining your organization.": "Stelle die persönlichen Standard-Einstellungen für neue Nutzer ein, die deiner Organisation beitreten.", "Configure the authentication methods for your organization.": "Arten der Authentifizierung für deine Organisation konfigurieren.", "Configure the default streams new users are subscribed to when joining your organization.": "Standardstreams für neue Nutzer deiner Organisation konfigurieren.", "Confirm": "Bestätigen", "Consider searching all public streams.": "Vielleicht möchtest du alle öffentlichen Streams durchsuchen.", - "Contact a moderator to resolve this topic.": "", - "Contact a moderator to unresolve this topic.": "", + "Contact a moderator to resolve this topic.": "Kontaktiere einen Moderator, um dieses Thema als gelöst zu markieren.", + "Contact a moderator to unresolve this topic.": "Kontaktiere einen Moderator, um dieses Thema als ungelöst zu markieren.", "Contact support": "Support kontaktieren", "Convert emoticons before sending (:) becomes 😃)": "Emoticons vor dem Senden konvertieren (:) in 😃 umwandeln)", "Cookie Bot": "Cookie-Bot", "Copied!": "Kopiert!", + "Copy URL": "", "Copy address": "Adresse kopieren", "Copy and close": "Kopieren und schließen", "Copy code": "Kopiere den Code", @@ -259,8 +276,8 @@ "Copy mention syntax": "Kopiere die Erwähnungs-Syntax", "Copy version": "Version kopieren", "Copy zuliprc": "zuliprc kopieren", - "Could not resolve topic": "", - "Could not unresolve topic": "", + "Could not resolve topic": "Konnte Thema nicht als gelöst markieren", + "Could not unresolve topic": "Konnte Thema nicht als ungelöst markieren", "Create": "Erstellen", "Create a stream": "Stream erstellen", "Create new stream": "Neuen Stream erstellen", @@ -269,10 +286,11 @@ "Create user group": "Nutzergruppe erstellen", "Creating group...": "Erstelle Gruppe … ", "Creating stream...": "Stream wird erstellt...", - "Currently viewing all direct messages.": "", + "Currently viewing all direct messages.": "Betrachte derzeit alle Direktnachrichten.", "Currently viewing all messages.": "Betrachte derzeit alle Nachrichten", "Currently viewing the entire stream.": "Betrachte derzeit den gesamten Stream.", "Custom": "Benutzerdefiniert", + "Custom URL": "", "Custom emoji": "Benutzerdefinierte Emoji", "Custom language: {query}": "Benutzerdefinierte Sprache: {query}", "Custom linkifier added!": "Benutzerdefinierter Linkifier hinzugefügt!", @@ -280,15 +298,15 @@ "Custom profile fields": "Benutzerdefinierte Profilfelder", "Custom time": "Eigene Zeit", "Cycle between stream narrows": "Zwischen Streambegrenzungen wechseln", - "DIRECT MESSAGES": "", - "DM": "", - "DMs, mentions, and alerts": "", - "Dark": "", + "DIRECT MESSAGES": "DIREKTNACHRICHTEN", + "DM": "DN", + "DMs, mentions, and alerts": "DNs, Erwähnungen und Signale", + "Dark": "Dunkel", "Dark theme": "Dunkles Theme", "Dark theme logo": "Logo für dunkles Theme", "Data exports": "Datenexporte", "Date muted": "Datum ausgeblendet", - "Date updated": "", + "Date updated": "Aktualisiert am", "Date uploaded": "Hochlade-Datum", "Day of the week to send digests": "Wochentag, an dem die Zusammenfassungen verschickt werden", "Deactivate": "Deaktivieren", @@ -302,11 +320,13 @@ "Deactivated": "Deaktiviert", "Deactivated users": "Deaktivierte Nutzer", "December": "Dezember", - "Default for stream": "", + "Default": "", + "Default for stream": "Standard für diesen Stream", "Default is {language}. Use 'text' to disable highlighting.": "Standard ist {language}. Benutze 'text', um das Highlighting abzustellen.", "Default language for code blocks": "Standardsprache für Code-Blöcke", "Default streams": "Standardstreams", - "Default streams for this organization": "", + "Default streams for new users cannot be made private.": "", + "Default streams for this organization": "Standardstreams für diese Organisation", "Default user settings": "Standard-Nutzereinstellungen", "Default view": "Standardansicht", "Delay before sending message notification emails": "Verzögerung, bevor Benachrichtigungs-E-Mails verschickt werden", @@ -314,19 +334,21 @@ "Delete": "Löschen", "Delete alert word": "Signalwort löschen", "Delete all drafts": "Alle Entwürfe löschen", + "Delete all selected drafts": "", "Delete code playground?": "Code-Spielwiese löschen?", "Delete custom profile field?": "Benutzerdefiniertes Profilfeld löschen?", "Delete data export?": "Datenexport löschen?", "Delete draft": "Entwurf löschen", "Delete file": "Datei löschen", "Delete file?": "Datei löschen?", + "Delete group": "", "Delete icon": "Icon löschen", "Delete linkifier?": "Linkifier löschen?", "Delete logo": "Logo löschen", "Delete message": "Nachricht löschen", "Delete message?": "Nachricht löschen?", "Delete profile picture": "Profilbild entfernen", - "Delete scheduled message": "", + "Delete scheduled message": "Geplante Nachricht löschen", "Delete selected draft": "Ausgewählten Entwurf löschen", "Delete topic": "Thema löschen", "Delete {user_group_name}?": "{user_group_name} löschen?", @@ -341,18 +363,21 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Je nach Größe deiner Organisation kann ein Export ein paar Sekunden oder eine Stunde dauern.", "Deprecation notice": "Veraltungshinweis", "Description": "Beschreibung", + "Deselect draft": "", "Desktop": "Desktop", "Desktop & mobile apps": "Desktop & mobile Apps", "Desktop message notifications": "Desktop-Benachrichtigungen", "Detailed keyboard shortcuts documentation": "Detaillierte Übersicht von Tastaturkürzeln", "Detailed message formatting documentation": "Detaillierte Dokumentation der Nachrichtenformatierung", "Detailed search filters documentation": "Detaillierte Dokumentation der Suchfilter", - "Direct message": "", - "Direct messages": "", - "Direct messages and mentions": "", - "Direct messages are disabled in this organization.": "", - "Direct messages disabled": "", - "Disable notifications?": "", + "Direct message": "Direktnachricht", + "Direct message to me": "", + "Direct messages": "Direktnachrichten", + "Direct messages and mentions": "Direktnachrichten und Erwähnungen", + "Direct messages are disabled in this organization.": "Direktnachrichten sind in dieser Organisation deaktiviert.", + "Direct messages disabled": "Direktnachrichten sind deaktiviert.", + "Disable": "", + "Disable notifications?": "Benachrichtigungen deaktivieren?", "Disabled": "Deaktiviert", "Discard": "Verwerfen", "Dismiss for a week": "Für eine Woche nicht mehr anzeigen", @@ -360,9 +385,9 @@ "Display my availability to other users": "Anderen Nutzern meine Verfügbarkeit anzeigen", "Display names of reacting users when few users have reacted to a message": "Die Namen der reagierenden Nutzer anzeigen, wenn nur wenige auf eine Nachricht reagiert haben", "Display on user card": "Auf Nutzerkarte darstellen", - "Display settings": "Einstellungen der Anzeige", - "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", + "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Möchtest du die letzten {total_messages_allowed_to_move, plural, one {message} other {# messages}} trotzdem verschieben?", "Do you want to add everyone?": "Möchtest du alle hinzufügen?", + "Do you want to mark them all as read?": "", "Domain": "Domain", "Don’t allow disposable email addresses": "Keine Wegwerf-E-Mail-Adressen erlauben", "Download": "Download", @@ -383,22 +408,21 @@ "EDITED": "EDITIERT", "Edit": "Bearbeiten", "Edit #{stream_name}": "#{stream_name} bearbeiten", - "Edit and reschedule message": "", + "Edit and reschedule message": "Nachricht bearbeiten und umplanen", "Edit bot": "Bot bearbeiten", "Edit custom profile field": "Benutzerdefiniertes Profilfeld bearbeiten", "Edit linkfiers": "Linkifier bearbeiten", "Edit message": "Nachricht bearbeiten", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Ausgewählten Entwurf editieren", "Edit selected message or view source": "Ausgewählte Nachricht bearbeiten oder Quelltext ansehen", "Edit status": "Status bearbeiten", - "Edit stream name and description": "", + "Edit stream name and description": "Streamname und Beschreibung", "Edit topic": "Thema bearbeiten", "Edit user": "Nutzer bearbeiten", "Edit your last message": "Deine letzte Nachricht bearbeiten", "Edit your profile": "Profil ändern", "Edit {group_name}": "{group_name} bearbeiten", - "Edited ({last_edit_timestr})": "Bearbeitet ({last_edit_timestr})", "Edited by {full_name}": "Bearbeitet von {full_name}", "Education (for-profit)": "Bildung (gewinnorientiert)", "Education (non-profit)": "Bildung (gemeinnützig)", @@ -450,10 +474,10 @@ "Exclude messages with topic .": "Nachrichten mit dem Thema ausschließen.", "Exit search": "Suche beenden", "Expand compose": "Editor aufklappen", - "Expand direct messages": "", + "Expand direct messages": "Direktnachrichten aufklappen", "Expand message": "Nachricht aufklappen", "Expires at": "Verfällt am/um:", - "Expires on {date} at {time}": "", + "Expires on {date} at {time}": "Läuft am {date} um {time} ab", "Export failed": "Export fehlgeschlagen", "Export organization": "Organisation exportieren", "Export started. Check back in a few minutes.": "Export gestartet. Sieh in ein paar Minuten wieder nach.", @@ -461,6 +485,7 @@ "External account type": "Externe Konto Art", "External link": "Externer Link", "Failed": "Gescheitert", + "Failed adding one or more streams.": "", "Failed to create video call.": "Konnte keinen Videoanruf erstellen.", "Failed to generate preview": "Konnte Vorschau nicht erstellen", "Failed to upload %'{file}'": "Konnte %'{file}' nicht hochladen", @@ -485,11 +510,9 @@ "Filter exports": "Exports filtern", "Filter groups": "Gruppen filtern", "Filter invites": "Einladungen filtern", - "Filter languages": "Sprachen filtern", "Filter linkifiers": "Linkifier filtern", "Filter members": "Mitglieder filtern", "Filter muted users": "Stummgeschaltete Nutzer filtern", - "Filter roles": "Rollen filtern", "Filter streams": "Streams filtern", "Filter subscribers": "Abonnenten filtern", "Filter topics": "Themen filtern", @@ -500,16 +523,20 @@ "First message": "Erste Nachricht", "First time? Read our guidelines for creating and naming streams.": "Dein erstes Mal? Lies unsere Richtlinien über die Erschaffung und Benennung von Streams.", "First time? Read our guidelines for creating user groups.": "Dein erstes Mal? Lies unseren Leitfaden über das Erstellen von Nutzergruppen.", - "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", - "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", - "For more examples, see the help center documentation on adding linkifiers.": "", - "Forgot it?": "", + "Follow": "", + "Followed": "", + "Followed topics": "", + "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Um zum Beispiel eine Code-Spielwiese für Codeblöcke zu konfigurieren, die als Python gekennzeichnet sind, kannst du einstellen:", + "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Weitere Beispiele und technische Details findest du in der Hilfecenter-Dokumentation zum Hinzufügen von Code-Spielwiesen.", + "For more examples, see the help center documentation on adding linkifiers.": "Weitere Beispiele findest du in der Hilfecenter-Dokumentation zum Hinzufügen von Linkifiern.", + "Forgot it?": "Passwort vergessen?", "Forked from upstream at {zulip_merge_base}": "Bei {zulip_merge_base} vom Upstream geforked", "Friday": "Freitag", "Full name": "Vollständiger Name", "GIPHY attribution": "GIPHY-Attribution", "GIPHY integration": "GIPHY-Integration", "General": "Allgemein", + "Generate URL for an integration": "", "Generate email address": "E-Mail-Adresse generieren", "Generate invite link": "Erstelle Einladungs-Link", "Generate new API key": "Neuen API-Schlüssel generieren", @@ -520,11 +547,11 @@ "Go back through viewing history": "Im Anzeigeverlauf zurückgehen", "Go forward through viewing history": "Im Anzeigeverlauf vorwärts gehen", "Go invisible": "Unsichtbar werden", - "Go to #{display_recipient}": "", - "Go to #{display_recipient} > {topic}": "", + "Go to #{display_recipient}": "Zu #{display_recipient} gehen", + "Go to #{display_recipient} > {topic}": "Zu #{display_recipient} > {topic} gehen", "Go to conversation": "Zur Unterhaltung gehen", "Go to default view": "Zur Standardansicht wechseln", - "Go to direct messages with {display_reply_to}": "", + "Go to direct messages with {display_reply_to}": "Gehe zu Direktnachrichten mit {display_reply_to}", "Got it": "Alles klar", "Got it!": "Hab's verstanden!", "Government": "Regierung", @@ -542,22 +569,28 @@ "High contrast mode": "Hoher-Kontrast-Modus", "Hint": "Bemerkung", "Hint (up to 80 characters)": "Tipp (bis zu 80 Zeichen)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Menschen", "Idle": "Inaktiv", - "If you don't know your password, you can reset it.": "", + "If you don't know your password, you can reset it.": "Wenn du dein Passwort nicht weißt, kannst du es zurücksetzen.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Deaktivierte Nutzer ignoriert:", "Image": "Bild", "In a meeting": "In einer Konferenz", "Inactive": "Inaktiv", "Inactive bots": "Inaktive Bots", - "Include DMs": "", - "Include content of direct messages in desktop notifications": "", + "Inbox": "", + "Include DMs": "DNs einschließen", + "Include content of direct messages in desktop notifications": "Inhalt von Direktnachrichten in Desktop-Benachrichtigungen anzeigen", "Include message content in message notification emails": "Inhalte von Nachrichten in Benachrichtigungs-E-Mails anzeigen", "Include muted": "Stummgeschaltete anzeigen", "Include organization name in subject of message notification emails": "Organisationsname im Betreff von Benachrichtigungs-E-Mails anzeigen", "Incoming webhooks can only send messages.": "Eingehende Webhooks können ausschließlich Nachrichten senden.", "Initiate a search": "Eine Suche starten", "Insert new line": "Zeilenumbruch einfügen", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrationen", "Interface": "Interface", "Invalid URL": "Ungültige URL", @@ -581,7 +614,9 @@ "Inviting...": "Lädt ein...", "Italic": "Kursiv", "January": "Januar", - "Join video call.": "", + "Jitsi server URL": "", + "Join audio call.": "", + "Join video call.": "Videoanruf beitreten.", "Join {realm_name}": "{realm_name} beitreten", "Joined": "Beigetreten", "Joined {date_joined}": "Beigetreten am {date_joined}", @@ -599,30 +634,33 @@ "Last 30 days": "Die letzten 30 Tage", "Last 6 months": "Die letzten 6 Monate", "Last active": "Zuletzt aktiv", + "Last edited {last_edit_timestr}": "", "Last message": "Letzte Nachricht", "Last modified": "Zuletzt geändert", + "Last moved {last_edit_timestr}": "", "Learn more": "Mehr erfahren", "Learn more about mentions here.": "Erfahre hier mehr über Erwähnungen.", "Learn more about starring messages here.": "Erfahre hier mehr über das Markieren von Nachrichten.", "Leave {group_name}": "{group_name} verlassen", "Let others see when I've read messages": "Andere sehen lassen, wenn ich Nachrichten gelesen habe", - "Let recipients see when I'm typing direct messages": "", + "Let recipients see when I'm typing direct messages": "Empfänger sehen lassen, wenn ich Direktnachrichten schreibe", "Let subscribers see when I'm typing messages in streams": "Abonnenten sehen lassen, wenn ich Nachrichten in Streams schreibe", - "Light": "", + "Light": "Hell", "Light theme": "Helles Theme", "Light theme logo": "Logo für helles Theme", "Link": "Link", "Link with Webathena": "Link mit Webathena", "Link:": "Link:", "Linkifiers": "Linkifiers", - "Linkifiers make it easy to refer to issues or tickets in third party issue trackers, like GitHub, Salesforce, Zendesk, and others. For instance, you can add a linkifier that automatically turns #2468 into a link to the GitHub issue in the Zulip repository with:": "", - "Loading…": "", + "Linkifiers make it easy to refer to issues or tickets in third party issue trackers, like GitHub, Salesforce, Zendesk, and others. For instance, you can add a linkifier that automatically turns #2468 into a link to the GitHub issue in the Zulip repository with:": "Linkifier machen es einfach, auf Probleme oder Tickets in Issue-Trackern von Drittanbietern, wie GitHub, Salesforce, Zendesk und anderen, zu verweisen. Du kannst zum Beispiel einen Linkifier hinzufügen, der #2468 automatisch in einen Link zu dem GitHub-Issue im Zulip-Repository verwandelt:", + "Loading…": "Lade …", "Local time": "Ortszeit", "Log in": "Anmelden", "Log in to browse more streams": "Einloggen, um weitere Streams anzusehen", "Log out": "Abmelden", "Looking for our integrations or API documentation?": "Suchst du unsere Dokumentation für Integrationen oder die API?", "MOVED": "VERSCHOBEN", + "Main menu": "", "Manage bot": "Bot verwalten", "Manage streams": "Streams verwalten", "Manage this bot": "Diesen Bot verwalten", @@ -631,7 +669,7 @@ "Manage user groups": "Nutzergruppen verwalten", "March": "März", "Mark all messages as read": "Alle Nachrichten als gelesen markieren", - "Mark all messages as read?": "", + "Mark all messages as read?": "Alle Nachrichten als gelesen markieren?", "Mark as read": "Als gelesen markieren", "Mark as resolved": "Als gelöst markieren", "Mark as unread from here": "Ab hier als ungelesen markieren", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Eine zeitzonenbewusste Zeit erwähnen", "Mentioned in": "Erwähnt in", "Mentions": "Erwähnungen", - "Menu": "Menü", "Menus": "Menüs", "Message #{stream_name}": "Nachricht an #{stream_name}", "Message #{stream_name} > {topic_name}": "Nachricht an #{stream_name} > {topic_name}", @@ -662,8 +699,10 @@ "Message {recipient_names}": "Nachricht an {recipient_names}", "Message {recipient_name} ({recipient_status})": "Nachricht an {recipient_names} ({recipient_status})", "Messages in all public streams": "Nachrichten in allen öffentlichen Streams", - "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", - "Messages will not be automatically marked as read. Change setting": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", + "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Nachrichten werden nicht automatisch als gelesen markiert, da es sich nicht um eine Konversationsansicht handelt. Einstellung ändern\n", + "Messages will not be automatically marked as read. Change setting": "Nachrichten werden nicht automatisch als gelesen markiert. Einstellung ändern", "Mobile": "Mobil", "Mobile message notifications": "Mobile Benachrichtigungen", "Mobile notifications": "Mobile Benachrichtigungen", @@ -671,21 +710,21 @@ "Moderator": "Moderator", "Moderators": "Moderatoren", "Monday": "Montag", - "Monday at {time}": "", + "Monday at {time}": "Montag um {time} Uhr", "Move all messages in {topic_name}": "Verschiebe alle Nachrichten in {topic_name}", "Move all messages in this topic": "Alle Nachrichten in dieses Thema verschieben", "Move message": "Nachricht verschieben", "Move messages": "Nachrichten verschieben", "Move messages or topic": "Nachricht oder Thema verschieben", "Move only this message": "Nur diese eine Nachricht verschieben", - "Move some messages?": "", + "Move some messages?": "Einige Nachrichten verschieben?", "Move this and all following messages in this topic": "Diese und alle folgenden Nachrichten in dieses Thema verschieben", "Move topic": "Thema verschieben", - "Moved ({last_edit_timestr})": "Verschoben ({last_edit_timestr})", "Moved by {full_name}": "Verschoben von {full_name}", "Moving messages": "Verschiebe Nachrichten", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Man muss von einem Abonnenten eingeladen werden; neue Abonnenten sehen nur die Nachrichten, die nach ihrem Beitritt gesendet wurden; verborgen vor Nutzern, die keine Administratoren sind", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Man muss von einem Abonnenten eingeladen werden; neue Abonnenten sehen den kompletten Nachrichtenverlauf; verborgen vor Nutzern, die keine Administratoren sind", + "Mute": "", "Mute stream": "Stream stummschalten", "Mute this user": "Diesen Nutzer stummschalten", "Mute topic": "Thema stummschalten", @@ -696,12 +735,12 @@ "Muted users": "Stummgeschaltete Nutzer", "Name": "Name", "Name changes are disabled in this organization. Contact an administrator to change your name.": "Änderungen von Namen wurden für diese Organisation deaktiviert. Kontaktiere einen Administrator, um deinen Namen zu ändern.", - "Narrow to all direct messages": "", + "Narrow to all direct messages": "Begrenze auf Direktnachrichten", "Narrow to all unmuted messages": "Auf nicht-stummgeschaltete Nachrichten begrenzen", "Narrow to current compose box recipient": "Auf den aktuellen Empfänger im Editorfenster begrenzen", - "Narrow to direct messages that include .": "", - "Narrow to direct messages with .": "", - "Narrow to direct messages.": "", + "Narrow to direct messages that include .": "Auf Direktnachrichten mit dem Thema begrenzen.", + "Narrow to direct messages with .": "Auf Direktnachrichten mit begrenzen.", + "Narrow to direct messages.": "Auf Direktnachrichten begrenzen.", "Narrow to just message ID .": "Auf Nachricht ID begrenzen.", "Narrow to messages containing images.": "Begrenze auf Nachrichten, die Bilder enthalten.", "Narrow to messages containing links.": "Begrenze auf Nachrichten, die Links enthalten.", @@ -713,11 +752,11 @@ "Narrow to messages that mention you.": "Begrenze auf Nachrichten, in denen du erwähnt wirst.", "Narrow to messages with alert words.": "Begrenze auf Nachrichten mit Signalwörtern.", "Narrow to messages with topic .": "Auf Nachrichten mit dem Thema begrenzen.", - "Narrow to next unread direct message": "", + "Narrow to next unread direct message": "Auf die nächste ungelesene Direktnachricht begrenzen", "Narrow to next unread topic": "Auf das nächste ungelesene Thema begrenzen", "Narrow to starred messages.": "Begrenze auf markierte Nachrichten.", - "Narrow to stream from topic view": "", - "Narrow to topic or DM conversation": "", + "Narrow to stream from topic view": "Auf Stream begrenzen aus der Themenansicht", + "Narrow to topic or DM conversation": "Auf Thema oder DN-Konversation begrenzen", "Narrow to unread messages.": "Auf ungelesene Nachrichten begrenzen.", "Narrow to {message_recipient}": "Begrenze auf {message_recipient}", "Narrowing": "Anzeige begrenzen", @@ -726,7 +765,7 @@ "Never ask on this computer": "Auf diesem Computer nie fragen", "Never expires": "Läuft nie ab", "New": "Neu", - "New direct message": "", + "New direct message": "Neue Direktnachricht", "New email": "Neue E-Mail", "New message": "Neue Nachricht", "New option": "Neue Option", @@ -734,41 +773,45 @@ "New password is too weak": "Neues Passwort ist zu schwach", "New stream announcements": "Bekanntmachungen über neue Streams", "New stream message": "Neue Stream Nachricht", + "New stream notifications": "Benachrichtigungen über neue Streams", "New task": "Neue Aufgabe", "New topic": "Neues Thema", "New user announcements": "Bekanntmachungen über neue Nutzer", + "New user notifications": "Benachrichtigungen über neue Nutzer", "Next message": "Nächste Nachricht", - "Next unread direct message": "", + "Next unread direct message": "Nächste ungelesene Direktnachricht", "Next unread topic": "Nächstes ungelesenes Thema", - "Next week": "Nächste Woche", "No bots match your current filter.": "Dein aktueller Filter trifft auf keine Bots zu.", + "No conversations match your filters.": "", "No custom emoji.": "Keine benutzerdefinierten Emojis.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Dein aktueller Filter stimmt mit keinem Standardstream überein.", "No description.": "Keine Beschreibung.", + "No drafts selected": "", "No drafts.": "Keine Entwürfe.", "No exports.": "Keine Exports vorhanden.", "No invites match your current filter.": "Keine Einladung passt zu diesem Filter.", "No language set": "Keine Sprache festgelegt", "No linkifiers set.": "Keine Linkifiers gesetzt.", + "No matching results": "", "No matching users.": "Keine passenden Nutzer.", "No one has read this message yet.": "Bisher hat noch niemand diese Nachricht gelesen.", "No owner": "Kein Besitzer", "No playgrounds configured.": "Keine Playgrounds konfiguriert.", "No restrictions": "Keine Beschränkungen", - "No scheduled messages.": "", - "No search results": "Keine Suchergebnisse", - "No search results.": "", + "No scheduled messages.": "Keine geplanten Nachrichten.", + "No search results.": "Keine Suchergebnisse.", "No stream subscriptions.": "Keine Stream-Abonnements.", "No streams": "Keine Streams", "No topics are marked as resolved.": "Keine Themen wurden als gelöst markiert.", - "No topics match your current filter.": "Dein aktueller Filter stimmt mit keinem Thema überein.", "No user group subscriptions.": "Keine Abonnements von Nutzergruppen.", "No user groups": "Keine Nutzergruppen", "No user to subscribe.": "Kein Nutzer zum Abonnieren.", "No users match your current filter.": "Dein aktueller Filter stimmt mit keinem Nutzer überein.", + "No users to add.": "", "No, I'll catch up.": "Nein, ich hole das auf.", "Nobody": "Niemand", - "Nobody in this Zulip organization will be able to see this email address.": "", + "Nobody in this Zulip organization will be able to see this email address.": "Niemand in dieser Zulip-Organisation kann diese E-Mail-Adresse sehen.", "Non-profit (registered)": "Gemeinnützig (registriert)", "None": "Keine", "Note that any bots that you maintain will be disabled.": "Beachte, dass alle deine Bots deaktiviert werden.", @@ -784,6 +827,7 @@ "Notify stream": "Stream benachrichtigen", "Notify this user by email?": "Soll dieser Nutzer per E-Mail benachrichtigt werden?", "November": "November", + "Numbered list": "", "October": "Oktober", "Old password": "Altes Passwort", "Once you leave this group, you will not be able to rejoin.": "Wenn du die Gruppe verlassen hast, kannst du ihr nicht wieder beitreten.", @@ -799,7 +843,8 @@ "Only organization owners may deactivate an organization.": "Nur Besitzer einer Organisation können diese deaktivieren.", "Only owners can change these settings.": "Nur Eigentümer können diese Einstellungen ändern.", "Only stream members can add users to a private stream": "Nur Stream-Mitglieder können Nutzer zu einem privaten Stream hinzufügen", - "Only stream members can add users to a private stream.": "", + "Only stream members can add users to a private stream.": "Nur Stream-Mitglieder können Nutzer zu einem privaten Stream hinzufügen.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Nur Abonnenten dieses Streams können Stream-Berechtigungen bearbeiten.", "Open": "Öffnen", "Open message menu": "Nachrichten-Menü öffnen", @@ -827,7 +872,7 @@ "Other emails": "Andere E-Mails", "Other permissions": "Andere Berechtigungen", "Other settings": "Andere Einstellungen", - "Other users in this Zulip organization will be able to see this email address.": "", + "Other users in this Zulip organization will be able to see this email address.": "Andere Nutzer dieser Zulip-Organisation können diese E-Mail-Adresse sehen.", "Out sick": "Krankgeschrieben", "Outgoing webhook message format": "Outgoing Webhook Nachrichtenformat", "Override default emoji?": "Standard-Emoji überschreiben?", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Bitte gib mindestens einen gültigen Empfänger an.", "Political group": "Politische Vereinigung", "Posted by {full_name}": "Veröffentlicht von {full_name}", + "Preferences": "", "Press > for list of topics": "Tippe > für die Themenliste", "Prevent users from changing their avatar": "Nutzer am Ändern ihres Avatars hindern", "Prevent users from changing their email address": "Nutzer können ihre E-Mail-Adresse nicht mehr ändern.", @@ -869,6 +915,7 @@ "Previous message": "Vorherige Nachricht", "Privacy": "Privatsphäre", "Privacy settings": "Privatsphäre-Einstellungen", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Privat, geschützter Verlauf", "Private, shared history": "Privat, geteilter Verlauf", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Bot reaktivieren", "Reactivate this bot": "Diesen Bot reaktivieren", "Reactivate this user": "Diesen Nutzer reaktivieren", + "Reactivate user": "", "Reactivate {name}": "{name} reaktivieren", "Read receipts": "Empfangsbestätigungen", "Read receipts are currently disabled in this organization.": "Empfangsbestätigungen sind derzeit in dieser Organisation deaktiviert.", @@ -892,14 +940,14 @@ "Remove": "Entfernen", "Remove from default": "Aus Standards entfernen", "Removed successfully.": "Entfernung erfolgreich.", - "Rename topic": "", - "Rename topic to:": "", - "Reply @-mentioning sender": "", - "Reply directly to sender": "", + "Rename topic": "Thema umbenennen", + "Rename topic to:": "Thema umbenennen in:", + "Reply @-mentioning sender": "Mit @-Erwähnung des Absenders antworten", + "Reply directly to sender": "Direkt an Absender antworten", "Reply mentioning bot": "Antwort mit Erwähnung des Bots", "Reply mentioning user": "Antwort mit @-Erwähnung des Nutzers erstellen.", "Reply to message": "Auf Nachricht antworten", - "Reply to selected conversation": "", + "Reply to selected conversation": "Auf ausgewählte Konversation antworten", "Reply to selected message": "Auf ausgewählte Nachricht antworten", "Request education pricing": "Einen Preis für Bildungseinrichtungen anfragen", "Request sponsorship": "Förderung anfragen", @@ -930,9 +978,10 @@ "Saved as draft": "Als Entwurf gespeichert", "Saved. Please reload for the change to take effect.": "Gespeichert. Bitte lade die Seite neu um die Änderungen zu aktivieren.", "Saving": "Wird gespeichert", - "Schedule for {formatted_send_later_time}": "", - "Schedule message": "", - "Scheduled messages": "", + "Schedule for {deliver_at}": "", + "Schedule for {formatted_send_later_time}": "Planen für {formatted_send_later_time}", + "Schedule message": "Nachricht planen", + "Scheduled messages": "Geplante Nachrichten", "Scroll down": "Runterscrollen", "Scroll down to view your message.": "Scrolle nach unten, um deine Nachricht zu sehen.", "Scroll through streams": "Durch Streams scrollen", @@ -948,18 +997,23 @@ "See how to configure email.": "So konfigurierst du die E-Mails.", "Select a stream": "Wähle einen Stream", "Select a stream below or change topic name.": "Wähle unten einen Stream oder ändere die Bezeichnung des Themas", - "Select date and time": "Datum und Zeit auswählen", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Emoji auswählen", "Select language": "Wähle eine Sprache", + "Select stream": "", "Send": "Absenden", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Automatisch eine Mitteilung an das neue Thema senden", "Send automated notice to old topic": "Automatisch eine Mitteilung an das alte Thema senden", "Send digest emails when I'm away": "E-Mail mit Zusammenfassung senden, wenn ich abwesend bin", "Send digest emails when user is away": "E-Mails mit Zusammenfassungen senden, wenn der Nutzer abwesend ist", - "Send direct message": "", + "Send direct message": "Direktnachricht senden", "Send email notifications for new logins to my account": "E-Mail-Benachrichtigungen für neue Logins in meinen Account senden", "Send emails introducing Zulip to new users": "E-Mails mit Einführung zu Zulip an neue Nutzer versenden ", - "Send later": "", + "Send later": "Später senden", "Send me Zulip's low-traffic newsletter (a few emails a year)": "Sende mir den selten erscheinenden Zulip-Newsletter (einige wenige E-Mails pro Jahr)", "Send message": "Nachricht senden", "Send mobile notifications even if I'm online": "Mobile Benachrichtigungen auch erhalten, wenn ich online bin", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Vorschau von hochgeladenen und verlinkten Bildern anzeigen", "Show starred message count": "Anzahl der markierten Nachrichten anzeigen", "Show status text": "Statustext anzeigen", + "Show unread counts for": "", "Show/change your API key": "Zeige/Ändere deinen API-Schlüssel", "Sign up": "Registrieren", "Silent mentions do not trigger notifications.": "Stumme Erwähnungen lösen keine Benachrichtigungen aus.", @@ -999,12 +1054,13 @@ "Sort by estimated weekly traffic": "Nach geschätztem wöchentlichem Traffic sortieren", "Sort by name": "Nach Namen sortieren", "Sort by number of subscribers": "Nach Anzahl der Abonnenten sortieren", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Markiere", "Star selected message": "Ausgewählte Nachricht markieren", "Star this message": "Nachricht markieren", "Starred messages": "Markierte Nachrichten", - "Start a new topic or select one from the list.": "", + "Start a new topic or select one from the list.": "Beginne ein neues Thema oder wähle eines aus der Liste.", "Start export of public data": "Beginne den Export der öffentlichen Daten", "Status": "Status", "Stream": "Stream", @@ -1024,8 +1080,10 @@ "Subscribe": "Abonnieren", "Subscribe them": "Füge sie hinzu", "Subscribe to/unsubscribe from selected stream": "Ausgewählten Stream de-/abonnieren", + "Subscribe {full_name} to streams": "", "Subscribed": "Abonniert", "Subscribed streams": "Abonnierte Streams", + "Subscribed successfully!": "Abonnierung erfolgreich!", "Subscriber count": "Anzahl Mitglieder", "Subscribers": "Mitglieder", "Successfully subscribed user:": "Folgender Nutzer wurde erfolgreich hinzugefügt:", @@ -1051,37 +1109,38 @@ "Theme": "Theme", "There are no current alert words.": "Es gibt derzeit keine Signalwörter.", "There are no messages here.": "Hier gibt es keine Nachrichten.", - "There are no streams you can view in this organization.": "", + "There are no streams you can view in this organization.": "In dieser Organisation gibt es keine Streams, die du anzeigen kannst.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Es existiert ein Standard-Emoji mit diesem Namen. Möchtest du es mit einem benutzerdefinierten Emoji überschreiben? Der Name :{emoji_name}: funktioniert dann nicht mehr für den Zugriff auf das Standard-Emoji.", "They administer the following bots:": "Nutzer verwaltet die folgenden Bots:", "This Zulip server is running an old version and should be upgraded.": "Die laufende Version der Zulip-Server-Software ist veraltet und sollte aktualisiert werden.", "This action cannot be undone.": "Diese Aktion kann nicht rückgängig gemacht werden.", "This action is permanent and cannot be undone. All users will permanently lose access to their Zulip accounts.": "Diese Aktion ist dauerhaft und kann nicht rückgängig gemacht werden. Alle Nutzer werden dauerhaft Zugriff auf Ihre Zulip-Konten verlieren.", - "This bot cannot be deactivated.": "", - "This bot cannot be edited.": "", + "This bot cannot be deactivated.": "Dieser Bot kann nicht deaktiviert werden.", + "This bot cannot be edited.": "Dieser Bot kann nicht bearbeitet werden.", "This bot has been deactivated.": "Dieser Bot ist deaktiviert worden.", "This is a demo organization and will be automatically deleted in {days_remaining} days.": "Dies ist eine Demo-Organisation, sie wird in {days_remaining} Tagen automatisch gelöscht.", "This is not a publicly accessible conversation.": "Dies ist keine öffentlich zugängliche Konversation.", "This is what a Zulip notification looks like.": "So sehen Benachrichtigungen in Zulip aus.", - "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message could not be sent at the scheduled time.": "Diese Nachricht konnte nicht zum geplanten Zeitpunkt gesendet werden.", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Diese Nachricht ist verborgen, weil du den Absender stummgeschaltet hast.", - "This organization is configured so that administrators and moderators can add custom emoji.": "", - "This organization is configured so that administrators and moderators can modify user groups.": "", - "This organization is configured so that administrators, moderators and full members belonging to the group can modify user groups.": "", - "This organization is configured so that administrators, moderators and group members can modify user groups.": "", + "This organization is configured so that administrators and moderators can add custom emoji.": "Diese Organisation ist so konfiguriert, dass Administratoren und Moderatoren benutzerdefinierte Emoji hinzufügen können.", + "This organization is configured so that administrators and moderators can modify user groups.": "Diese Organisation ist so konfiguriert, dass Administratoren und Moderatoren Nutzergruppen bearbeiten können.", + "This organization is configured so that administrators, moderators and full members belonging to the group can modify user groups.": "Diese Organisation ist so konfiguriert, dass Administratoren, Moderatoren und vollständige Mitglieder, die der Gruppe angehören, Nutzergruppen bearbeiten können.", + "This organization is configured so that administrators, moderators and group members can modify user groups.": "Diese Organisation ist so konfiguriert, dass Administratoren, Moderatoren und Gruppenmitglieder Nutzergruppen bearbeiten können.", "This organization is configured so that admins and moderators can invite users to this organization.": "Diese Organisation ist so konfiguriert, dass Administratoren und Moderatoren weitere Nutzer zu dieser Organisation einladen können.", "This organization is configured so that admins can invite users to this organization.": "Diese Organisation ist so konfiguriert, dass Administratoren weitere Nutzer zu dieser Organisation einladen können.", "This organization is configured so that admins, moderators and full members can invite users to this organization.": "Diese Organisation ist so konfiguriert, dass Administratoren, Moderatoren und vollständige Mitglieder weitere Nutzer zu dieser Organisation einladen können.", "This organization is configured so that admins, moderators and members can invite users to this organization.": "Diese Organisation ist so konfiguriert, dass Administratoren, Moderatoren und Mitglieder weitere Nutzer zu dieser Organisation einladen können.", - "This organization is configured so that any member of this organization can add custom emoji.": "", - "This organization is configured so that anyone can add bots.": "", - "This organization is configured so that full members can add custom emoji.": "", + "This organization is configured so that any member of this organization can add custom emoji.": "Diese Organisation ist so konfiguriert, dass jeder in dieser Organisation benutzerdefinierte Emoji hinzufügen kann.", + "This organization is configured so that anyone can add bots.": "Diese Organisation ist so konfiguriert, dass jeder Bots hinzufügen kann.", + "This organization is configured so that full members can add custom emoji.": "Diese Organisation ist so konfiguriert, dass vollständige Mitglieder benutzerdefinierte Emoji hinzufügen können.", "This organization is configured so that nobody can invite users to this organization.": "Diese Organisation ist so konfiguriert, dass niemand weitere Nutzer zu dieser Organisation einladen kann.", - "This organization is configured so that only administrators can add bots.": "", - "This organization is configured so that only administrators can add custom emoji.": "", - "This organization is configured so that only administrators can add generic bots.": "", - "This organization is configured so that only administrators can modify user groups.": "", + "This organization is configured so that only administrators can add bots.": "Diese Organisation ist so konfiguriert, dass nur Administratoren Bots hinzufügen können.", + "This organization is configured so that only administrators can add custom emoji.": "Diese Organisation ist so konfiguriert, dass nur Administratoren benutzerdefinierte Emoji hinzufügen können.", + "This organization is configured so that only administrators can add generic bots.": "Diese Organisation ist so konfiguriert, dass nur Administratoren Standard-Bots hinzufügen können.", + "This organization is configured so that only administrators can modify user groups.": "Diese Organisation ist so konfiguriert, dass nur Administratoren Nutzergruppen bearbeiten können.", "This organization is configured to restrict editing of message content to {minutes_to_edit} minutes after it is sent.": "Diese Organisation ist konfiguriert, Nachrichten nur für {minutes_to_edit} Minuten nach dem Senden bearbeitbar zu machen.", "This stream does not exist or is private.": "Dieser Stream existiert nicht oder ist privat.", "This stream does not yet have a description.": "Dieser Stream hat noch keine Beschreibung.", @@ -1103,20 +1162,18 @@ "Time zone": "Zeitzone", "Time's up!": "Zeit vorbei!", "Tip: You can also send \"/poll Some question\"": "Tipp: Du kannst auch \"/poll Eine Umfrage\" senden", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Um Code-Blöcke mit Syntax-Highlighting darzustellen, füge das erste Kürzel von Pygment für die Sprache nach den ersten Akzent-Zeichen ein. Du kannst auch Code-Blöcke darstellen lassen, wenn du jeder Zeile 4 Leerzeichen voranstellst.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Um Nutzer einzuladen, erhöhe bitte die Anzahl der Lizenzen oder deaktiviere inaktive Nutzer.", "To preserve your reading state, this view does not mark messages as read.": "Um deinen Lesefortschritt zu bewahren, werden bei dieser Ansicht Nachrichten nicht als gelesen markiert.", "Today": "Heute", - "Today at {time}": "", - "Toggle first emoji reaction on selected message": "", + "Today at {time}": "Heute um {time} Uhr", + "Toggle first emoji reaction on selected message": "Erste Emoji-Reaktion auf ausgewählte Nachricht umschalten", "Toggle subscription": "Abonnierung umschalten", "Toggle the gear menu": "Zahnrad-Menü umschalten", "Toggle topic mute": "Stummschaltung des Themas umschalten", - "Tomorrow": "Morgen", - "Tomorrow at {time}": "", + "Tomorrow at {time}": "Morgen um {time} Uhr", "Topic": "Thema", "Topic muted": "Thema stummgeschaltet", - "Topic settings": "", + "Topic settings": "Themen-Einstellungen", "Topics": "Themen", "Topics are required in this organization.": "In dieser Organisation müssen Themen angegeben werden.", "Topics marked as resolved": "Als gelöst markierte Themen", @@ -1124,13 +1181,14 @@ "Turn off invisible mode": "Unsichtbarkeitsmodus ausschalten", "Two factor authentication": "Zwei-Faktor-Authentifizierung", "Type": "Typ", + "URL": "URL", + "URL for your integration": "", "URL pattern": "URL-Muster", - "URL prefix": "URL-Präfix", - "URL template": "", + "URL template": "URL-Vorlage", "USERS": "NUTZER", "Uncheck all": "Alles abwählen", "Undo": "Rückgängig", - "Undo mute": "", + "Undo mute": "Stummschaltung aufheben", "Unknown": "Unbekannt", "Unknown stream": "Unbekannter Stream", "Unknown stream #{search_text}": "Unbekannter Stream #{search_text}", @@ -1138,7 +1196,8 @@ "Unmute stream": "Stummschaltung des Streams aufheben", "Unmute this user": "Stummschaltung für Nutzer aufheben", "Unmute topic": "Stummschaltung des Themas aufheben", - "Unmuted": "", + "Unmuted": "Stummschaltung aufgehoben", + "Unmuted streams and topics": "", "Unpin stream from top": "Oben angepinnten Stream loslösen", "Unread": "Ungelesen", "Unread count badge (appears in desktop sidebar and browser tab)": "Abzeichen mit Anzahl ungelesener Nachrichten (wird in der Desktop-Seitenleiste und im Tab des Browsers angezeigt)", @@ -1150,7 +1209,7 @@ "Unstar messages in topic": "Entferne Markierungen von Nachrichten im Thema", "Unstar this message": "Markierung aufheben", "Unsubscribe": "Deabonnieren", - "Unsubscribe from ": "", + "Unsubscribe from ": " deabonnieren", "Unsubscribed successfully!": "Erfolgreich ausgetragen!", "Up to {time_limit} after posting": "Bis zu {time_limit} nach dem Senden einer Nachricht", "Update successful: Subdomains allowed for {domain}": "Aktualisierung erfolgreich: Subdomains für {domain} erlaubt.", @@ -1196,10 +1255,10 @@ "Vacationing": "Im Urlaub", "Version {zulip_version}": "Version {zulip_version}", "Video call provider": "Videochat-Anbieter", - "View all streams": "", - "View direct messages": "", + "View all streams": "Alle Streams anzeigen", + "View direct messages": "Direktnachrichten anzeigen", "View drafts": "Entwürfe anzeigen", - "View edit history": "Bearbeitungsverlauf anzeigen", + "View edit and move history": "", "View file": "Datei anzeigen", "View in playground": "Auf der Spielwiese ansehen", "View in {name}": "Ansehen in {name}", @@ -1210,10 +1269,10 @@ "View profile": "Profil ansehen", "View read receipts": "Empfangsbestätigungen anzeigen", "View recent conversations": "Neueste Unterhaltungen ansehen", - "View scheduled messages": "", + "View scheduled messages": "Geplante Nachrichten anzeigen", "View stream": "Stream anzeigen", "View stream messages": "Nachrichten in Stream anzeigen", - "View streams": "", + "View streams": "Streams anzeigen", "View user card": "Nutzerkarte ansehen", "View your profile": "Dein Profil ansehen", "Visual": "Visuell", @@ -1227,9 +1286,10 @@ "Web-public": "öffentlich im Netz", "Wednesday": "Mittwoch", "Week of {date}": "Woche {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Willkommen zurück! Du hast {unread_msgs_count}ungelesene Nachrichten. Möchtest du sie alle als gelesen markieren?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Welche Pronomen sollten die Leute für dich benutzen?", "When you deactivate , they will be immediately logged out.": "Wenn du Nutzer deaktivierst, wird er sofort ausgeloggt.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Ob Platzhalter-Erwähnungen wie @all im Hinblick auf Benachrichtigungen als normale Erwähnungen behandelt werden sollen.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Welche Teile der E-Mail sollen in die Zulip-Nachricht, die an diesen Stream gesendet wird, eingeschlossen werden?", "Who can access the stream?": "Wer hat Zugriff auf den Stream?", @@ -1241,15 +1301,16 @@ "Who can create and manage user groups": "Wer kann Nutzergruppen erstellen und verwalten", "Who can create private streams": "Wer kann private Streams erstellen", "Who can create public streams": "Wer kann öffentliche Streams erstellen", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Wer kann im Netz veröffentlichte Streams erstellen", "Who can delete their own messages": "Wer kann seine eigenen Nachrichten löschen", - "Who can invite users to this organization": "Wer kann Nutzer zu dieser Organisation einladen", "Who can move messages to another stream": "Wer darf Nachrichten in einen anderen Stream verschieben", "Who can move messages to another topic": "Wer darf Nachrichten in ein anderes Thema verschieben", "Who can post to the stream?": "Wer kann in diesem Stream posten?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "Wer kann andere von diesem Stream abmelden?", "Who can use @all/@everyone mentions in large streams": "Wer darf Erwähnungen per @all/@everyone in großen Streams nutzen?", - "Who can use direct messages": "", + "Who can use direct messages": "Wer kann Direktnachrichten nutzen", "Why not start a conversation with yourself?": "Warum beginnst du nicht einfach eine Unterhaltung mit dir selbst?", "Why not start the conversation?": "Wieso beginnst du nicht einfach die Unterhaltung?", "Word": "Wort", @@ -1257,8 +1318,8 @@ "Working…": "Arbeitet…", "Write": "Schreiben", "Yes, please!": "Ja, bitte!", - "Yes, save": "", - "Yes, schedule": "", + "Yes, save": "Ja, speichern", + "Yes, schedule": "Ja, planen", "Yes, send": "Ja, senden", "Yesterday": "Gestern", "You": "Du", @@ -1268,104 +1329,113 @@ "You and": "Du und", "You and {display_reply_to}": "Du und {display_reply_to}", "You and {recipients}": "Du und {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", - "You are not allowed to send direct messages in this organization.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are not allowed to send direct messages in this organization.": "Du hast keine Berechtigung, Direktnachrichten in dieser Organisation zu versenden.", "You are not currently subscribed to this stream.": "Du bist zurzeit kein Mitglied dieses Streams.", - "You are not subscribed to any streams.": "", - "You are not subscribed to stream ": "", + "You are not subscribed to any streams.": "Du hast keine Streams abonniert.", + "You are not subscribed to stream ": "Du hast den Stream nicht abonniert", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Du sendest eine Nachricht an ein gelöstes Thema. Du kannst das so machen, oder du setzt das Thema erst auf 'ungelöst'.", "You are using an old version of the Zulip desktop app with known security bugs.": "Du nutzt eine veraltete Version der Zulip Desktop-App, die bekannte Sicherheitslücken enthält.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Du hast diesen Stream noch nicht abonniert und bisher hat niemand etwas darüber geschrieben!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Du kannst auch Tabellen erstellen mit dieser Markdown-artigen Tabellensyntax.", "You can combine search filters as needed.": "Du kannst Suchfilter kombinieren, wie du es brauchst.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Du bekommst vollständigen Zugriff auf diese Community und kannst an den Konversationen teilnehmen, wenn du in dieser Organisation einen Zulip-Account erstellst.", - "You can no longer save changes to this message.": "", + "You can no longer save changes to this message.": "Du kannst Änderungen an dieser Nachricht nicht mehr speichern.", "You can only view or manage invitations that you sent.": "Du kannst nur die Einladungen ansehen oder verwalten, die du selbst gesendet hast.", "You can reactivate deactivated users from organization settings.": "Du kannst deaktivierte Nutzer in den Einstellungen der Organisation wieder reaktivieren.", "You can use email to send messages to Zulip streams.": "Du kannst E-Mails dazu nutzen, Nachrichten an Streams in Zulip zu schicken.", "You cannot create a stream with no subscribers!": "Du kannst keinen Stream ohne Mitglieder erstellen!", "You cannot create a user group with no members!": "Du kannst keine Nutzergruppe ohne Gruppenmitglieder erstellen!", "You cannot send messages to deactivated users.": "Du kannst keine Nachrichten an deaktivierte Nutzer senden.", - "You do not have permission to add other users to streams in this organization.": "", - "You do not have permission to move some of the messages in this topic. Contact a moderator to move all messages.": "", + "You do not have permission to add other users to streams in this organization.": "Du hast keine Berechtigung, andere Nutzer zu Streams in dieser Organisation hinzuzufügen.", + "You do not have permission to move some of the messages in this topic. Contact a moderator to move all messages.": "Du hast keine Berechtigung, einige der Nachrichten in diesem Thema zu verschieben. Kontaktiere einen Moderator, um alle Nachrichten zu verschieben.", "You do not have permission to post in this stream.": "Du hast keine Berechtigung, um in diesem Stream zu schreiben.", - "You do not have permission to resolve topics with messages older than {N, plural, one {# day} other {# days}} in this organization.": "", - "You do not have permission to resolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", - "You do not have permission to resolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", - "You do not have permission to unresolve topics with messages older than {N, plural, one {# day} other {# days}} in this organization.": "", - "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", - "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", + "You do not have permission to resolve topics with messages older than {N, plural, one {# day} other {# days}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# day} other {# days}} sind, in dieser Organisation zu verschieben.", + "You do not have permission to resolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# day} other {# days}} sind, in dieser Organisation als gelöst zu markieren.", + "You do not have permission to resolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# minute} other {# minutes}} sind, in dieser Organisation als gelöst zu markieren.", + "You do not have permission to unresolve topics with messages older than {N, plural, one {# day} other {# days}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# day} other {# days}} sind, in dieser Organisation als ungelöst zu markieren.", + "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# hour} other {# hours}} sind, in dieser Organisation als ungelöst zu markieren.", + "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "Du hast keine Berechtigung, Themen mit Nachrichten, die älter als {N, plural, one {# minute} other {# minutes}} sind, in dieser Organisation als ungelöst zu markieren.", "You do not have permission to use wildcard mentions in this stream.": "Du hast keine Berechtigung zur Nutzung von Platzhalter-Erwähnungen in diesem Stream.", - "You don't have any direct message conversations yet.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", + "You don't have any direct message conversations yet.": "Du hast noch keine Direktnachricht-Konversationen.", + "You follow this topic": "", "You get": "Du bekommst", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Du hast stummgeschaltet.", + "You have muted this topic": "", "You have no active bots.": "Du hast keine aktiven Bots.", - "You have no direct messages including {person} yet.": "", - "You have no direct messages with these users yet.": "", - "You have no direct messages with {person} yet.": "", - "You have no direct messages yet!": "", + "You have no direct messages including {person} yet.": "Du hast mit {person} noch keine Direktnachrichten ausgetauscht.", + "You have no direct messages with these users yet.": "Du hast mit diesen Nutzern noch keine Direktnachrichten ausgetauscht.", + "You have no direct messages with {person} yet.": "Du hast mit {person} noch keine Direktnachrichten ausgetauscht.", + "You have no direct messages yet!": "Du hast noch keine Direktnachrichten!", "You have no inactive bots.": "Du hast keine inaktiven Bots.", - "You have no starred messages.": "", + "You have no starred messages.": "Du hast keine markierten Nachrichten.", "You have no unread messages!": "Du hast keine ungelesenen Nachrichten!", - "You have not configured any topics yet.": "", + "You have not configured any topics yet.": "Du hast noch keine Themen konfiguriert.", "You have not muted any users yet.": "Du hast noch keine Nutzer stummgeschaltet.", - "You have not sent any direct messages to yourself yet!": "", + "You have not sent any direct messages to yourself yet!": "Du hast dir noch keine Direktnachrichten geschickt!", "You have not uploaded any files.": "Du hast keine Dateien hochgeladen.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Du wurdest bisher noch nicht erwähnt!", "You haven't received any messages sent by {person} yet.": "Du hast noch keine von {person} gesendeten Nachrichten empfangen.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Du musst ein Administrator der Organisation sein, um einen Stream zu erstellen, ohne ihn zu abonnieren.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Zephyr-Mirroring muss laufen, damit Nachrichten gesendet werden können!", "You searched for:": "Du hast gesucht nach:", - "You subscribed to stream ": "", + "You subscribed to stream ": "Du hast den Stream abonniert", "You type": "Du tippst", - "You unsubscribed from stream ": "", - "You will not receive notifications about new messages.": "", + "You unsubscribed from stream ": "Du hast den Stream deabonniert", + "You will get default notifications for this topic": "", + "You will not receive notifications about new messages.": "Du wirst keine Benachrichtigungen über neue Nachrichten erhalten.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Du hast diesen Stream nicht abonniert. Du wirst nicht benachrichtigt, wenn andere Nutzer auf deine Nachricht antworten.", "Your API key:": "Dein API-Schlüssel:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Dein Zulip-Account auf wurde deaktiviert, du kannst dich nicht mehr einloggen.\n", - "Your message has been scheduled for {deliver_at}.": "", - "Your message is taking longer than expected to be sent. Sending…": "", - "Your message was sent to a stream you have muted.": "", - "Your message was sent to a topic you have muted.": "", - "Your password": "", + "Your groups": "", + "Your message has been scheduled for {deliver_at}.": "Deine Nachricht ist für {deliver_at} geplant.", + "Your message is taking longer than expected to be sent. Sending…": "Es dauert länger als erwartet, deine Nachricht zu senden. Sende …", + "Your message was sent to a stream you have muted.": "Deine Nachricht wurde zu einem Stream gesendet, den du stummgeschaltet hast.", + "Your message was sent to a topic you have muted.": "Deine Nachricht wurde zu einem Thema gesendet, das du stummgeschaltet hast.", + "Your password": "Dein Passwort", "Your status": "Dein Status", "Your time zone:": "Deine Zeitzone:", - "Zoom to message in conversation context": "", + "Zoom to message in conversation context": "Zur Nachricht im Konversations-Kontext springen", "Zulip": "Zulip", "Zulip Server dev environment": "Zulip Server Entwicklerumgebung", "Zulip Server {display_version}": "Zulip Server {display_version}", "Zulip Server {display_version} (modified)": "Zulip Server {display_version} (modifiziert)", "Zulip Server {display_version} (patched)": "Zulip Server {display_version} (mit Patch)", - "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", + "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "Mit Zulip kannst du Themen und Streams stummschalten, damit du keine Benachrichtigungen erhältst, die dich nicht interessieren. Das Stummschalten eines Streams schaltet alle Themen in diesem Stream stumm. Du kannst ein Thema in einem nicht stummgeschalteten Stream auch manuell stummschalten oder die Stummschaltung eines Themas in einem stummgeschalteten Stream aufheben. Mehr erfahren.", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip muss E-Mails senden können, um die E-Mail-Adressen der Nutzer zu verifizieren und Benachrichtigungen zu versenden.", "Zulip needs your permission to enable desktop notifications.": "Zulip benötigt deine Erlaubnis, um Desktop-Benachrichtigungen zu aktivieren.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Die Übersetzungen von Zulip werden von unserer wunderbaren Gemeinschaft freiwilliger Übersetzer beigesteuert. Wenn du helfen möchtest, schau dir bitte die Richtlinien für die Übersetzung von Zulip an.", "[Configure]": "[Konfigurieren]", - "[Disable]": "[Deaktivieren]", - "[More…]": "[mehr ...]", "[Quoting…]": "[Zitiere...]", - "[Unset]": "[Zurücksetzen]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "und {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "zurück zu den Streams", "beta": "beta", "clear": "leeren", "cookie": "Cookie", "deprecated": "veraltet", - "direct messages with yourself": "", - "direct messages with {recipient}": "", + "direct messages with yourself": "Direktnachrichten mit dir selbst", + "direct messages with {recipient}": "Direktnachrichten mit {recipient}", "does not apply to administrators": "gilt nicht für Administratoren", "does not apply to moderators and administrators": "gilt nicht für Moderatoren und Administratoren", - "group direct messages with {recipient}": "", + "group direct messages with {recipient}": "Gruppen-Direktnachrichten mit {recipient}", "he/him": "er/ihm", - "in 1 hour": "in 1 Stunde", - "in 20 minutes": "in 20 Minuten", - "in 3 hours": "in 3 Stunden", "invisible mode off": "Unsichtbarkeitsmodus aus", "leafy green vegetable": "grünes Blattgemüse", "marketing": "Marketing", "more conversations": "weitere Unterhaltungen", "more topics": "weitere Themen", - "or": "oder", "she/her": "sie/ihr", "they/them": "they/them", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Erledigt! {N} Nachricht wurde als gelesen markiert.} other {Erledigt! {N} Nachrichten wurden als gelesen markiert.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "Vor {days_old} Tagen", "{full_name} is typing…": "{full_name} schreibt...", "{hours} hours ago": "Vor {hours} Stunden", - "{items_selected} selected": "{items_selected} ausgewählt", - "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", + "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# Nachricht} other {# Nachrichten}} will remain in the current topic.", "{minutes} min to edit": "{minutes} Minuten zum Bearbeiten", "{minutes} minutes ago": "Vor {minutes} Minuten", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Diese Nachricht wurde von {num_of_people} Person gelesen.} other {Diese Nachricht wurde von {num_of_people} Personen gelesen.}}", "{seconds} sec to edit": "{seconds} Sekunden zum Bearbeiten", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} Ortszeit", "{username} [said]({link_to_message}):": "{username} [schrieb]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} hat mit {emoji_name} reagiert." diff --git a/locale/en_GB/LC_MESSAGES/django.po b/locale/en_GB/LC_MESSAGES/django.po index 77afc3381e..cd3113555d 100644 --- a/locale/en_GB/LC_MESSAGES/django.po +++ b/locale/en_GB/LC_MESSAGES/django.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Andi Chandler , 2023 # David Wood , 2022-2023 # David Wood , 2019 # David Wood , 2019-2021 @@ -10,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" -"Last-Translator: David Wood , 2022-2023\n" +"Last-Translator: Andi Chandler , 2023\n" "Language-Team: English (United Kingdom) (http://app.transifex.com/zulip/zulip/language/en_GB/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,46 +21,47 @@ msgstr "" "Language: en_GB\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Not allowed for guest users" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Invalid organisation" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Public streams" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Private streams" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Direct messages" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Group direct messages" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "Unknown chart name: {chart_name}" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Start time is later than end time. Start: {start}, End: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "No analytics data available. Please contact your server administrator." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Invalid parameters" @@ -120,29 +122,31 @@ msgid "" msgstr "Your organisation does not have enough unused Zulip licenses to invite {num_invites} users." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "You must invoice for at least {min_licenses} users." -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Invoices with more than {} licenses can't be processed from this page. To complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "Invoices with more than {max_licenses} licences can't be processed from this page. To complete the upgrade, please contact {email}." -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Something went wrong. Please contact {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Something went wrong. Please reload the page." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Something went wrong. Please wait a few seconds and try again." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -174,7 +178,7 @@ msgstr "Unable to update the plan. The plan has been expired and replaced with a msgid "Unable to update the plan. The plan has ended." msgstr "Unable to update the plan. The plan has ended." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -190,14 +194,14 @@ msgstr "Your plan is already on {licenses} licenses in the current billing perio msgid "You cannot decrease the licenses in the current billing period." msgstr "You cannot decrease the licenses in the current billing period." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Your plan is already scheduled to renew with {licenses_at_next_renewal} licenses." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Nothing to change." @@ -209,7 +213,7 @@ msgstr "No customer for this organisation!" msgid "Session not found" msgstr "Session not found" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Must be a billing administrator or an organisation owner" @@ -259,7 +263,7 @@ msgid "" msgstr "\n If this error is unexpected, you can\n contact support.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Internal server error" @@ -561,9 +565,9 @@ msgstr "Billing status" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -581,9 +585,9 @@ msgstr "View pricing" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Self-host Zulip" @@ -593,9 +597,9 @@ msgstr "Self-host Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Request sponsorship" @@ -858,51 +862,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Sign up with %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Confirm your email address" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Thanks for signing up!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Check your email (%(email)s) so we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "To complete your registration, check your email account (%(email)s) for a confirmation email from Zulip." #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Still no email? We can resend it." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Just in case, take a look at your Spam folder." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "If this message does not go away, try reloading the page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "If you don't see a confirmation email in your Inbox or Spam folder, we can resend it." -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "If this message does not go away, try reloading the page." + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "Error loading Zulip. Try reloading the page." + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Unable to connect to Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Updates may be delayed." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Retrying soon…" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Try now." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Messages" @@ -1150,6 +1154,159 @@ msgstr "Normal users" msgid "Digest" msgstr "Digest" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Congratulations, you have created a new Zulip demo organisation. Note\n that this organisation will be automatically deleted in 30 days. Learn more\n about demo organisations here!\n " + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Congratulations, you have created a new Zulip\n organisation: %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Welcome to Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "You've joined the Zulip organisation %(realm_name)s.\n " + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "You will use the following info to log into the Zulip web, mobile and desktop apps:" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Organisation URL: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Your username: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Use your LDAP account to log in" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "Your account email: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Go to organisation" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "If you are new to Zulip, check out our Getting started guide!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "We also have a guide for Setting up your organisation." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s on Zulip: Your new organisation details" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s on Zulip: Your new account details" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr " Congratulations, you have created a new demo Zulip organisation. Note that this organisation will be automatically deleted in 30 days. Learn more about demo organisations here: %(demo_organizations_help_link)s!" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Congratulations, you have created a new Zulip organisation: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "You've joined the Zulip organisation %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "You will use the following info to log into the Zulip web, mobile and desktop apps (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "If you are new to Zulip, check out our Getting started guide (%(getting_user_started_link)s)!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr " We also have a guide for Setting up your organisation (%(getting_organization_started_link)s)." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "Questions? Contact us at %(support_email)s — we'd love to help!" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "If you have any questions, please contact this Zulip server's administrators at %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1157,6 +1314,39 @@ msgstr "Digest" msgid "Hi," msgstr "Hi," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "We received a request to add the email address %(new_email)s to your Zulip demo organisation account on %(realm_uri)s. To confirm this update and set a password for this account, please click below:" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "Confirm and set password" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "If you did not request this change, please contact us immediately at %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "Verify your new email address for your demo Zulip organisation" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "If you did not request this change, please contact us immediately at <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1170,23 +1360,10 @@ msgstr "We received a request to change the email address for the Zulip account msgid "Confirm email change" msgstr "Confirm email change" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "If you did not request this change, please contact us immediately at %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verify your new email address" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "If you did not request this change, please contact us immediately at <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1240,17 +1417,6 @@ msgid "" "— we'd love to help!" msgstr "Do you have questions or feedback to share? Contact us at %(support_email)s — we'd love to help!" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "If you have any questions, please contact this Zulip server's administrators at %(support_email)s." - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1355,225 +1521,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Your email address %(email)s has accounts with the following Zulip organisations hosted by %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Congratulations, you have created a new Zulip demo organisation. Note\n that this organisation will be automatically deleted in 30 days. Learn more\n about demo organisations here!\n " - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Congratulations, you have created a new Zulip\n organisation: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Welcome to Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "You've joined the Zulip organisation %(realm_name)s.\n " - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "You will use the following info to log into the Zulip web, mobile and desktop apps:" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Organisation URL: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Your username: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Use your LDAP account to log in" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "Your account email: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Go to organisation" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "If you are new to Zulip, check out our Getting started guide!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "We also have a guide for Setting up your organisation." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "Questions? Contact us — we'd love to help!" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s on Zulip: Your new organisation details" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s on Zulip: Your new account details" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr " Congratulations, you have created a new demo Zulip organisation. Note that this organisation will be automatically deleted in 30 days. Learn more about demo organisations here: %(demo_organizations_help_link)s!" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Congratulations, you have created a new Zulip organisation: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "You've joined the Zulip organisation %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "You will use the following info to log into the Zulip web, mobile and desktop apps (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "If you are new to Zulip, check out our Getting started guide (%(getting_user_started_link)s)!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr " We also have a guide for Setting up your organisation (%(getting_organization_started_link)s)." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "Questions? Contact us at %(support_email)s — we'd love to help!" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "Here are some tips for keeping your Zulip conversations organised with topics." - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "In Zulip, streams determine who gets a message. Topics tell you what the message is about." - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "Using topics, you can read Zulip one conversation at a time. You'll see each message in context, no matter how many different discussions are going on." - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "Streams and topics in the Zulip app" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "To kick off a new conversation, just pick a stream and start a new topic. This way, the new conversation thread won't interrupt ongoing discussions. For a good topic name, think about finishing the sentence: “Hey, can we chat about…?”" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Examples of short topics" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "Don't stress about picking the perfect name for your topic. If anything is out of place, it's easy to move messages, rename topics, or even move a topic to a different stream." - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Go to Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "Unsubscribe from welcome emails for %(realm_name)s" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "Keep your conversations organised with topics" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "In Zulip, streams determine who gets a message. Topics tell you what the message is about." - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "Don't stress about picking the perfect name for your topic. If anything is out of place, it's easy to move messages (%(move_messages_link)s), rename topics (%(rename_topics_link)s), or even move a topic to a different stream (%(move_topic_to_different_stream_link)s)." - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1658,15 +1605,15 @@ msgstr "This invitation expires in two days. If the invitation expires, you'll n #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." -msgstr "If you have any questions, please contact this Zulip server's administrators at %(email)s." +" at %(email)s." +msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" -msgstr "Do you have questions or feedback to share? Contact us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" +msgstr "" #: templates/zerver/emails/missed_message.html:17 #, python-format @@ -1697,21 +1644,45 @@ msgid "" msgstr "You are receiving this because @%(mentioned_user_group_name)s was mentioned." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "You are receiving this because all topic participants were mentioned in #%(stream_name)s > %(topic_name)s." + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "You are receiving this because you have wildcard mention notifications enabled for topics you follow." + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "You are receiving this because everyone was mentioned in #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "You are receiving this because you have email notifications enabled for topics you follow." + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "You are receiving this because you have email notifications enabled for #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1719,21 +1690,21 @@ msgid "" "preferences." msgstr "Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "View or reply in %(realm_name)s Zulip, or manage email preferences." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Reply in %(realm_name)s Zulip, or manage email preferences." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1776,29 +1747,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nThis email does not include message content because you have disabled message content appearing in email notifications.\nSee %(alert_notif_url)s for more details.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Reply to this email directly, or view it in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "View or reply in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Reply in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nDo not reply to this email. This Zulip server is not configured to accept\nincoming emails. Help:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Manage email preferences: " @@ -1961,6 +1932,14 @@ msgstr "View Zulip guide for non-profits" msgid "View Zulip guide for communities" msgstr "View Zulip guide for communities" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "Unsubscribe from welcome emails for %(realm_name)s" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Zulip guide for businesses" @@ -1989,6 +1968,78 @@ msgstr "Zulip guide for non-profits" msgid "Zulip guide for communities" msgstr "Zulip guide for communities" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "Here are some tips for keeping your Zulip conversations organised with topics." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "In Zulip, streams determine who gets a message. Topics tell you what the message is about." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "Using topics, you can read Zulip one conversation at a time. You'll see each message in context, no matter how many different discussions are going on." + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "Streams and topics in the Zulip app" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "To kick off a new conversation, just pick a stream and start a new topic. This way, the new conversation thread won't interrupt ongoing discussions. For a good topic name, think about finishing the sentence: “Hey, can we chat about…?”" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Examples of short topics" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "Don't stress about picking the perfect name for your topic. If anything is out of place, it's easy to move messages, rename topics, or even move a topic to a different stream." + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Go to Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "Keep your conversations organised with topics" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "In Zulip, streams determine who gets a message. Topics tell you what the message is about." + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "Don't stress about picking the perfect name for your topic. If anything is out of place, it's easy to move messages (%(move_messages_link)s), rename topics (%(rename_topics_link)s), or even move a topic to a different stream (%(move_topic_to_different_stream_link)s)." + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2377,7 +2428,7 @@ msgid "Incoming webhooks" msgstr "Incoming webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interactive bots" @@ -2877,292 +2928,295 @@ msgid "" " " msgstr "\n You can also use the Zulip desktop app.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "signups" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} just signed up for Zulip. (total: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} accepted your invitation to join Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Invalid order mapping." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Field id {id} not found." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "Invalid default stream group name '{group_name}'" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "Default stream group name too long (limit: {max_length} characters)" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "Default stream group name '{group_name}' contains NULL (0x00) characters." -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "Invalid default stream group {group_name}" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' is a default stream and cannot be added to '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Default stream group '{group_name}' already exists" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Stream '{stream_name}' is already present in default stream group '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Stream '{stream_name}' is not present in default stream group '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "This default stream group is already named '{group_name}'" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Default stream group '{}' already exists" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "To protect users, Zulip limits the number of invitations you can send in one day. Because you have reached the limit, no invitations were sent." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Your account is too new to send invites for this organisation. Ask an organisation admin, or a more experienced user." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Some emails did not validate, so we didn't send any invitations." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "We weren't able to invite anyone." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Some of those addresses are already using Zulip, so we didn't send them an invitation. We did send invitations to everyone else!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nothing to change" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "Direct messages cannot be moved to streams." -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "Direct messages cannot have topics." -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Invalid propagate_mode without topic edit" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Cannot change message content while changing stream" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Widgets cannot be edited." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} has marked this topic as resolved." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} has marked this topic as unresolved." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "This topic was moved to {new_location} by {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "A message was moved from this topic to {new_location} by {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} messages were moved from this topic to {new_location} by {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "This topic was moved here from {old_location} by {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "[A message]({message_link}) was moved here from {old_location} by {user}." -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} messages were moved here from {old_location} by {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Your organisation has turned off message editing" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "You don't have permission to edit this message" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "The time limit for editing this message has passed" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "The time limit for editing this message's topic has passed." -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "You do not have permission to use wildcard mentions in this stream." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "You don't have permission to move this message" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "You don't have permission to move this message due to missing access to its stream" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "The time limit for editing this message's stream has passed" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "Invalid flag: '{flag}'" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "Flag not editable: '{flag}'" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "Invalid message flag operation: '{operation}'" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Invalid message(s)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Unable to render message" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Expected exactly one stream" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Invalid data type for stream" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Invalid data type for recipients" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Recipient lists may contain emails or user IDs, but not both." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, but there is no stream with that ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Your bot {bot_identity} tried to send a message to stream {stream_name}, but that stream does not exist. Click [here]({new_stream_link}) to create it." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Your bot {bot_identity} tried to send a message to stream {stream_name}. The stream exists but does not have any subscribers." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Direct messages are disabled in this organisation." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Topics are required in this organisation" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: API programmer sent invalid JSON content" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reaction already exists." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "The ordered list must not contain duplicated linkifiers" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "The ordered list must enumerate all existing linkifiers exactly once" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "Invalid data type for stream ID" @@ -3176,8 +3230,8 @@ msgid "Scheduled message was already sent" msgstr "Scheduled message was already sent" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "Scheduled delivery time must be in the future." @@ -3196,18 +3250,32 @@ msgstr "The message you scheduled for {delivery_datetime} was not sent because o msgid "[View scheduled messages](#scheduled)" msgstr "[View scheduled messages](#scheduled)" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "Stream is already deactivated" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "Stream is not currently deactivated" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "Stream named {stream_name} already exists" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "Stream {stream_name} un-archived." + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} changed the [access permissions](/help/stream-permissions) for this stream from **{old_policy}** to **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3216,38 +3284,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n\n* **Old permissions**: {old_policy}.\n* **New permissions**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} renamed stream {old_stream_name} to {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "No description." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} changed the description for this stream." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Old description" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "New description" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Forever" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Messages in this stream will now be retained forever." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3257,56 +3325,59 @@ msgid "" "{summary_line}" msgstr "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n* **Old retention period**: {old_retention_period}\n* **New retention period**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "You cannot attach a submessage to this message." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "Invalid user ID {user_id}" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "User group '{group_name}' already exists." -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "This API is not available to incoming webhook bots." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Account is not associated with this subdomain" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "This endpoint does not accept bot requests." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Must be an server administrator" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Insufficient permission" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "This endpoint requires HTTP basic authentication." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Invalid authorisation header for basic auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Missing authorisation header for basic auth" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook bots can only access webhooks" @@ -3321,95 +3392,101 @@ msgstr "Your account {username} has been deactivated. Please contact your organi msgid "The password is too weak." msgstr "The password is too weak." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomain needs to have length 3 or greater." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomain cannot start or end with a '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomain can only have lowercase letters, numbers, and '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Please use your real email address." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "The organisation you are trying to join using {email} does not exist." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Please request an invite for {email} from the organisation administrator." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Your email address, {email}, is not in one of the domains that are allowed to register for accounts in this organisation." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Email addresses containing + are not allowed in this organisation." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "New members cannot join this organisation because all Zulip licenses are in use. Please contact the person who invited you and ask them to increase the number of licenses, then try again." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "New password" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "New password confirmation" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "You're making too many attempts to sign in. Try again in {} seconds or contact your organisation administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "You're making too many attempts to sign in. Try again in {seconds} seconds or contact your organisation administrator for help." -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Your password has been disabled because it is too weak. Reset your password to create a new one." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "Tip: You can enter multiple email addresses with commas between them." -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Please enter at most 10 emails." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "We couldn't find that Zulip organisation." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "Invalid email '{email}'" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3473,31 +3550,31 @@ msgstr "Subdomains cannot start or end with a '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domain can only have letters, numbers, '.' and '-'s." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Timestamp must not be negative." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Topic must not contain null bytes" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Must specify exactly 1 stream ID for stream messages" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "User has disabled synchronizing drafts." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Draft does not exist" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Open Zulip to see the spoiler content" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip notifications" @@ -3530,166 +3607,166 @@ msgstr "Already has an account." msgid "Account has been deactivated." msgstr "Account has been deactivated." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "Emoji '{emoji_name}' does not exist" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Invalid custom emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Invalid custom emoji name." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "This custom emoji has been deactivated." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Invalid emoji code." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Invalid emoji name." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Invalid emoji type." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Must be an organisation administrator or emoji author" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "Emoji names must end with either a letter or digit." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "Emoji names must contain only lowercase English letters, digits, spaces, dashes, and underscores." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emoji name is missing" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Could not allocate event queue" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Not logged in: API authentication or user session required" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Stream '{stream}' does not exist" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Stream with ID '{stream_id}' does not exist" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "organisation owner" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "user" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Cannot deactivate the only {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Invalid Markdown include statement: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API usage exceeded rate limit" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Malformed JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Must be an organisation member" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Must be an organisation administrator" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Must be an organisation owner" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Your username or password is incorrect" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Account is deactivated" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "This organisation has been deactivated" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "The mobile push notification service registration for your server has been deactivated" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Password authentication is disabled in this organisation" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Your password has been disabled and needs to be reset" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Invalid API key" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Malformed API key" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "The '{event_type}' event isn't currently supported by the {webhook_name} webhook" +"webhook; ignoring" +msgstr "The '{event_type}' event isn't currently supported by the {webhook_name} webhook; ignoring" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Unable to parse request: Did {webhook_name} generate this event?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Invalid subdomain" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Access denied" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3697,6 +3774,14 @@ msgid "" "messages in this topic." msgstr "You only have permission to move the {total_messages_allowed_to_move}/{total_messages_in_topic} most recent messages in this topic." +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reaction already exists." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reaction doesn't exist." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitter username" @@ -3738,8 +3823,8 @@ msgid "Settings" msgstr "Settings" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3751,264 +3836,272 @@ msgid "" "and give it a go!" msgstr "Click here to start a new conversation. Pick a topic (2-3 words is best), and give it a go!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integration frameworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Continuous integration" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Customer support" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Deployment" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Entertainment" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Communication" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financial" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Human resources" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Miscellaneous" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Monitoring" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Project management" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productivity" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Version control" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Message must not be empty" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Message must not contain null bytes" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "You are not allowed to mention user group '{user_group_name}'. You must be a member of '{can_mention_group_name}' to mention this group." -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "Operator {operator} not supported." + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Invalid narrow operator: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Missing 'anchor' argument." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Invalid anchor" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "If you are new to Zulip, check out our [Using Zulip for a class guide]({getting_started_url})!" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "If you are new to Zulip, check out our [Getting started guide]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "We also have a guide for [Setting up Zulip for a class]({organization_setup_url})." -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "We also have a guide for [Setting up your organisation]({organization_setup_url})." -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "Note that this is a [demo organisation]({demo_organization_help_url}) and will be **automatically deleted** in 30 days." -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Hello, and welcome to Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "This is a direct message from me, Welcome Bot." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "I can also help you get set up! Just click anywhere on this message or press `r` to reply." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Here are a few messages I understand:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also works great in a browser." -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Go to [Profile settings](#settings/profile) to add a [profile picture](/help/change-your-profile-picture) and edit your [profile information](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Go to [Display settings](#settings/display-settings) to [switch between the light and dark themes](/help/dark-theme), [pick your favorite emoji theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your language](/help/change-your-language), and make other tweaks to your Zulip experience." +msgstr "Go to [Preferences](#settings/preferences) to [switch between the light and dark themes](/help/dark-theme), [pick your favorite emoji theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your language](/help/change-your-language), and make other tweaks to your Zulip experience." -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "In Zulip, streams [determine who gets a message](/help/streams-and-topics). They are similar to channels in other chat apps." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Browse and subscribe to streams](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "In Zulip, topics [tell you what a message is about](/help/streams-and-topics). They are light-weight subjects, very similar to the subject line of an email." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "Check out [Recent conversations](#recent) to see what's happening! You can return to this conversation by clicking \"Direct messages\" in the upper left." -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app quickly and efficiently." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip uses [Markdown](/help/format-your-message-using-markdown), an intuitive format for **bold**, *italics*, bulleted lists, and more. Click [here](#message-formatting) for a cheat sheet." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Check out our [messaging tips](/help/messaging-tips) to learn about emoji reactions, code blocks and much more!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Check out our [Getting started guide](/help/getting-started-with-zulip), or browse the [Help center](/help/) to learn more!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "I’m sorry, I did not understand your message. Please try one of the following commands:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "This is a private stream, as indicated by the lock icon next to the stream name." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Private streams are only visible to stream members." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "To manage this stream, go to [Stream settings]({stream_settings_url}) and click on `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "This is a message on stream #**{default_notification_stream_name}** with the topic `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Topics are a lightweight tool to keep conversations organised." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "You can learn more about topics at [Streams and topics]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "This is a message on stream #**{default_notification_stream_name}** with the topic `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4023,669 +4116,758 @@ msgstr "Invalid JSON in response" msgid "Invalid response format" msgstr "Invalid response format" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "Invalid GCM option to bouncer: priority {priority!r}" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "Invalid GCM options to bouncer: {options}" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token does not exist" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "This organisation has disabled including message content in mobile push notifications" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} mentioned @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} mentioned you:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} mentioned everyone:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "User not authorised for this query" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' is no longer using Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "You can't send direct messages outside of your organisation." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "Push notifications bouncer error: {error}" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Can't decide between '{var_name1}' and '{var_name2}' arguments" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Missing '{var_name}' argument" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Bad value for '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Malformed payload" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "Argument \"{name}\" is not valid JSON." #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "Scheduled message does not exist" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Account Security" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Only organisation administrators can send to this stream." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Only organisation administrators and moderators can send to this stream." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Guests cannot send to this stream." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "New members cannot send to this stream." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Not authorised to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "Not authorised to send to stream '{stream_name}'" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Please supply 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Please choose one: 'stream' or 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Invalid stream ID" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "Stream name '{stream_name}' is already taken." -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "Invalid stream name '{stream_name}'" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "A default stream cannot be private." -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "Stream(s) ({stream_names}) do not exist" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Web-public streams are not enabled." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "Default stream group with id '{group_id}' does not exist." -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Stream name can't be empty!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "Stream name too long (limit: {max_length} characters)." -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "Invalid character in stream name, at position {position}!" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Topic can't be empty!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "Invalid character in topic, at position {position}!" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Subscriber data is not available for this stream" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Unable to retrieve subscribers for private stream" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} is not a boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} is not a date" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} is not a dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "Argument \"{argument}\" at {var_name} is unexpected" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} is not a float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} is too small" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} is not an integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "{var_name} is not valid JSON" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} is too large" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} is not a list" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Invalid {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} is too long (limit: {max_length} characters)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "{var_name} is too short." + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} is not a string" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "{var_name} cannot be blank" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Upload would exceed your organisation's upload quota." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Could not decode image; did you upload an image file?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Image size exceeds limit." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Corrupt animated image." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Unknown animated image format." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Invalid user group" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" +msgstr "Invalid user group ID: {group_id}" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." +msgstr "'{setting_name}' must be a system user group." -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." -msgstr "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." +msgstr "'{setting_name}' setting cannot be set to 'role:internet' group." -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." -msgstr "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "'{setting_name}' setting cannot be set to 'role:owners' group." -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." -msgstr "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "'{setting_name}' setting cannot be set to 'role:nobody' group." -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "'{setting_name}' setting cannot be set to 'role:everyone' group." + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "User group name cannot exceed {max_length} characters." + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "User group name cannot start with '{prefix}'." + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Name too long!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Name too short!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Invalid characters in name!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Invalid format!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Name is already in use!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Bad name or username" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "Invalid integration '{integration_name}'." -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "Missing configuration parameters: {keys}" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "Invalid {key} value {value} ({error})" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Invalid configuration data!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Invalid bot type" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Invalid interface type" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "Invalid user ID: {user_id}" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "No such bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "No such user" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "User is deactivated" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} is not a string" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} cannot be blank." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Invalid {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} is too long (limit: {max_length} characters)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} has incorrect length {length}; should be {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} is not a recognized time zone" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} is not a date" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} is not an integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} is too small" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} is too large" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} is not a float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} is not a boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} is not a valid hex color code" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} is not a list" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} should have exactly {length} items" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} is not a dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} key is missing from {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "Unexpected arguments: {keys}" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} is not an allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} is wrong)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} is not a URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "URL pattern must contain '%(username)s'." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' cannot be blank." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Field must not have duplicate choices." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' is not a valid choice for '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} is not a string or an integer list" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} is not a string or integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} does not have a length" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} is missing" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Missing the HTTP event header '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "The {webhook} webhook expects time in milliseconds." -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "There should be a leading slash in the zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "No such command: {command}" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF error: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "Reverse proxy misconfiguration: {proxy_reason}" + +#: zerver/models.py:488 msgid "stream events" msgstr "stream events" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Available on Zulip Cloud Standard. Upgrade to access." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "GIPHY integration disabled" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "Allow GIFs rated Y (Very young audience)" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "Allow GIFs rated G (General audience)" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "Allow GIFs rated PG (Parental guidance)" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "Allow GIFs rated PG-13 (Parental guidance - under 13)" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "Allow GIFs rated R (Restricted)" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Invalid characters in emoji name" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "Bad regular expression: {regex}" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Unknown regular expression error" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "Invalid URL template." -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "Group %(name)r in URL template is not present in linkifier pattern." -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "Group %(name)r in linkifier pattern is not present in URL template." -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Invalid characters in pygments language" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "Missing the required variable \"code\" in the URL template" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "\"code\" should be the only variable present in the URL template" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Admins, moderators, members and guests" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Admins, moderators and members" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Admins and moderators" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Admins only" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nobody" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Organisation owner" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Organisation administrator" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderator" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Member" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Guest" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-public" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Public" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Private, shared history" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Private, protected history" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Public, protected history" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "All stream members can post" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Only organisation administrators can post" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Only organisation administrators and moderators can post" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Only organisation full members can post" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Custom emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip extra emoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "User with ID {user_id} is deactivated" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "User with ID {user_id} is a bot" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "List of options" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Person picker" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Short text" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Long text" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Date picker" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "External account" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronouns" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Unknown IP address" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "an unknown operating system" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "An unknown browser" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Missing 'queue_id' argument" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Missing 'last_event_id' argument" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "An event newer than {event_id} has already been pruned!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Event {event_id} was not in this queue" @@ -4753,89 +4935,123 @@ msgstr "A field with that label already exists." msgid "Default custom field cannot be updated." msgstr "Default custom field cannot be updated." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Endpoint not available in production." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend not enabled." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "Invalid '{key}' parameter for anonymous request" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "Unknown hotspot: {hotspot}" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "You must specify at least one email address." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Stream does not exist with id: {}. No invites were sent." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "Stream does not exist with id: {stream_id}. No invites were sent." + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "You do not have permission to subscribe other users to streams." -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "No such invitation" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "Invitation has already been revoked" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "Invalid stream ID {stream_id}. No invites were sent." -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Message edit history is disabled in this organisation" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "You don't have permission to delete this message" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "The time limit for deleting this message has passed" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Message already deleted" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "Too many messages requested (maximum {max_messages})." #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "The anchor can only be excluded at an end of the range" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "No such topic '{topic}'" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Missing sender" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mirroring not allowed with recipient user IDs" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Invalid mirrored message" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr mirroring is not allowed in this organisation" @@ -4851,27 +5067,28 @@ msgstr "User already muted" msgid "User is not muted" msgstr "User is not muted" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Presence is not supported for bot users." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "No presence data for {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Client did not pass any new values." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Client must pass emoji_name if they pass either emoji_code or reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "Invalid status: {status}" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4887,37 +5104,37 @@ msgid "" "emoji_code" msgstr "At least one of the following arguments must be present: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reaction doesn't exist." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Read receipts are disabled in this organisation." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "Invalid language '{language}'" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "At least one authentication method must be enabled." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "Invalid video_chat_provider {video_chat_provider}" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "Invalid giphy_rating {giphy_rating}" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Must be a demo organisation." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "Invalid domain: {error}" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4929,42 +5146,43 @@ msgstr "The domain {domain} is already a part of your organisation." msgid "No entry found for domain {domain}." msgstr "No entry found for domain {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "You must upload exactly one file." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Only administrators can override default emoji." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "Uploaded file is larger than the allowed limit of {max_size} MiB" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Exceeded rate limit." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Please request a manual export from {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Invalid data export ID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Export already deleted" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "Export failed, nothing to delete" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "Export still in progress" @@ -4972,7 +5190,7 @@ msgstr "Export still in progress" msgid "You must upload exactly one icon." msgstr "You must upload exactly one icon." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier not found." @@ -4980,107 +5198,100 @@ msgstr "Linkifier not found." msgid "You must upload exactly one logo." msgstr "You must upload exactly one logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Invalid playground" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "Recipient required when updating type of scheduled message." -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "Topic required when updating scheduled message type to stream." -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "Invalid request format" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "Invalid DSN" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "User not authorised to execute queries on behalf of '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Private streams cannot be made default." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "You must pass \"new_description\" or \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Default streams cannot be made private." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Stream already has that name!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nothing to do. Specify at least one of \"add\" or \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} subscribed you to the stream {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} subscribed you to the following streams:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Unable to access stream ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "You can only invite other Zephyr mirroring users to private streams." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} created the following streams: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} created a new stream {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "new streams" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** stream created by {user_name}. **Description:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "Unknown subscription property: {property}" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "Not subscribed to stream id {stream_id}" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Invalid json for submessage" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

You are not authorised to view this file.

" @@ -5096,97 +5307,108 @@ msgstr "User has disabled typing notifications for stream messages" msgid "User has disabled typing notifications for direct messages" msgstr "User has disabled typing notifications for direct messages" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "

This file does not exist or has been deleted.

" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Invalid token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Invalid filename" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "You must specify a file to upload" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "You may only upload one file at a time" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "No new data supplied" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "{user_full_name} added you to the group {group_name}." -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "{user_full_name} removed you from the group {group_name}." -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "User {user_id} is already a member of this group" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "There is no member '{user_id}' in this user group" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "User group {group_id} is already a subgroup of this group." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "User group {user_group_id} is already a subgroup of one of the passed subgroups." + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "User group {group_id} is not a subgroup of this group." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Avatar changes are disabled in this organisation." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Email address changes are disabled in this organisation." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Invalid default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "Invalid notification sound '{notification_sound}'" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "Invalid email batching period: {seconds} seconds" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Your Zulip password is managed in LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Wrong password!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "You're making too many attempts! Try again in {seconds} seconds." -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "New password is too weak!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "You must upload exactly one avatar." @@ -5233,6 +5455,10 @@ msgstr "Invalid embedded bot name." msgid "Username already in use" msgstr "Username already in use" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "User not authorized to create users" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5243,8 +5469,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Disposable email addresses are not allowed in this organisation" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "Email '{email}' already in use" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5262,27 +5489,27 @@ msgstr "Invalid Zoom session identifier" msgid "Invalid Zoom credentials" msgstr "Invalid Zoom credentials" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Failed to create Zoom call" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton is not configured." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Invalid signature." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Error connecting to the BigBlueButton server." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Error authenticating to the BigBlueButton server." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton server returned an unexpected error." @@ -5302,28 +5529,28 @@ msgstr "Invalid Kerberos cache" msgid "We were unable to set up mirroring for you" msgstr "We were unable to set up mirroring for you" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "Projects using this version control system provider aren't supported" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Invalid payload" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Unknown webhook request" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Topic can't be empty" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Content can't be empty" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Malformed JSON input" @@ -5342,7 +5569,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "The newrelic webhook requires state be in [created|activated|acknowledged|closed]" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "Events key is missing from payload" @@ -5350,19 +5577,20 @@ msgstr "Events key is missing from payload" msgid "Unable to handle Pivotal payload" msgstr "Unable to handle Pivotal payload" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Error: channels_map_to_topics parameter other than 0 or 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Message from Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "Unknown WordPress webhook action: {hook}" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5379,47 +5607,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Must validate with valid Zulip server API key" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Invalid UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Invalid token type" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "{hostname} is not a valid hostname" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Missing user_id or user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "Invalid property {property}" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Data is out of order." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Invalid data." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "Malformed audit log data" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "You need to reset your password." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Missing id_token parameter" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Invalid OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Can't use both mobile_flow_otp and desktop_flow_otp together." diff --git a/locale/en_GB/translations.json b/locale/en_GB/translations.json index 0ec5ac4dd3..c474289756 100644 --- a/locale/en_GB/translations.json +++ b/locale/en_GB/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(hidden)", "(no description)": "(no description)", "(no topic)": "(no topic)", + "(or )": "(or )", "(you)": "(you)", "({message_retention_days} days)": "({message_retention_days} days)", "/dark (Switch to the dark theme)": "/dark (Switch to the dark theme)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} has {number_of_invites_by_user} unexpired invitations.", "Subscribe": "Subscribe", - "Click here to learn about exporting private streams and messages.": "Click here to learn about exporting private streams and messages.", + "Click here to learn about exporting private streams and direct messages.": "Click here to learn about exporting private streams and direct messages.", "Upgrade for more space.": "Upgrade for more space.", " to add a new line": " to add a new line", " to send": " to send", @@ -82,15 +83,18 @@ "Add alert word": "Add alert word", "Add all users": "Add all users", "Add another user...": "Add another user...", + "Add audio call": "", "Add code playground": "Add code playground", + "Add default streams": "Add default streams", + "Add email": "Add email", "Add emoji": "Add emoji", "Add emoji reaction": "Add emoji reaction", "Add extra emoji for members of the {realm_name} organization.": "Add extra emoji for members of the {realm_name} organisation.", "Add global time": "Add global time", "Add linkifier": "Add linkifier", "Add members": "Add members", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Add member…", - "Add new default stream": "Add new default stream", "Add new user group": "Add new user group", "Add one or more users": "Add one or more users", "Add option": "Add option", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Add subscribers. Use usergroup or #streamname to bulk add subscribers.", "Add task": "Add task", "Add video call": "Add video call", + "Add your email to invite other users or convert to a permanent Zulip organization.": "Add your email to invite other users or convert to a permanent Zulip organisation.", "Added successfully!": "Added successfully!", "Added successfully.": "Added successfully.", "Administrator": "Administrator", @@ -124,6 +129,7 @@ "Alerted messages": "Alerted messages", "All": "All", "All direct messages": "All direct messages", + "All groups": "", "All messages": "All messages", "All messages including muted streams": "All messages including muted streams", "All streams": "All streams", @@ -136,9 +142,11 @@ "Allow subdomains": "Allow subdomains", "Allowed domains": "Allowed domains", "Allowed domains: {domains}": "Allowed domains: {domains}", + "Already members:": "", "Already not subscribed.": "Already not subscribed.", "Already subscribed to {stream}": "Already subscribed to {stream}", "Already subscribed users:": "Already subscribed users:", + "Already subscribed.": "", "Always": "Always", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.", "An hour ago": "An hour ago", @@ -150,6 +158,7 @@ "Archive ?": "Archive ?", "Archive stream": "Archive stream", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.", + "Archiving this stream will also disable settings that were configured to use this stream:": "Archiving this stream will also disable settings that were configured to use this stream:", "Are you sure you want to continue?": "Are you sure you want to continue?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?", "Are you sure you want to deactivate this organization?": "Are you sure you want to deactivate this organisation?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Are you sure you want to resend the invitation to ?", "Are you sure you want to revoke the invitation to {email}?": "Are you sure you want to revoke the invitation to {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Are you sure you want to revoke this invitation link created by {referred_by}?", + "Are you sure you want to revoke this invitation link?": "Are you sure you want to revoke this invitation link?", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Are you sure you want to unstar all messages in ? This action cannot be undone.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Are you sure you want to unstar all starred messages? This action cannot be undone.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Avatar changes are disabled in this organisation", "Avatar from Gravatar": "Avatar from Gravatar", "Back to streams": "Back to streams", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "Because the original owner of this bot is deactivated, you will become the owner for this bot.", "Because you are the only organization owner, you cannot deactivate your account.": "Because you are the only organisation owner, you cannot deactivate your account.", "Because you are the only subscriber, this stream will be automatically archived.": "Because you are the only subscriber, this stream will be automatically archived.", "Billing": "Billing", @@ -190,8 +201,11 @@ "Bot owner": "Bot owner", "Bot type": "Bot type", "Bots": "Bots", + "Browse 1 more stream": "Browse 1 more stream", "Browse recent conversations": "Browse recent conversations", "Browse streams": "Browse streams", + "Browse {can_subscribe_stream_count} more streams": "Browse {can_subscribe_stream_count} more streams", + "Bulleted list": "", "Business": "Business", "Busy": "Busy", "By deactivating your account, you will be logged out immediately.": "By deactivating your account, you will be logged out immediately.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Click here to reveal.", "Click on the pencil () icon to edit and reschedule a message.": "Click on the pencil () icon to edit and reschedule a message.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Click outside the input box to save. We'll automatically notify anyone that was added or removed.", + "Click to change notifications for this topic.": "Click to change notifications for this topic.", + "Click to view edit history.": "Click to view edit history.", "Click to view or download.": "Click to view or download.", "Close": "Close", "Close modal": "Close modal", @@ -232,7 +248,7 @@ "Commuting": "Commuting", "Compact": "Compact", "Complete": "Complete", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Complete the organisation profile to brand and explain the purpose of this Zulip organization.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "Complete your organisation profile, which is displayed on your organisation's registration and login pages.", "Compose message": "Compose message", "Compose your message here": "Compose your message here", "Compose your message here...": "Compose your message here...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Convert emoticons before sending (:) becomes 😃)", "Cookie Bot": "Cookie Bot", "Copied!": "Copied!", + "Copy URL": "", "Copy address": "Copy address", "Copy and close": "Copy and close", "Copy code": "Copy code", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Currently viewing all messages.", "Currently viewing the entire stream.": "Currently viewing the entire stream.", "Custom": "Custom", + "Custom URL": "", "Custom emoji": "Custom emoji", "Custom language: {query}": "Custom language: {query}", "Custom linkifier added!": "Custom linkifier added!", @@ -302,10 +320,12 @@ "Deactivated": "Deactivated", "Deactivated users": "Deactivated users", "December": "December", + "Default": "Default", "Default for stream": "Default for stream", "Default is {language}. Use 'text' to disable highlighting.": "Default is {language}. Use 'text' to disable highlighting.", "Default language for code blocks": "Default language for code blocks", "Default streams": "Default streams", + "Default streams for new users cannot be made private.": "Default streams for new users cannot be made private.", "Default streams for this organization": "Default streams for this organisation", "Default user settings": "Default user settings", "Default view": "Default view", @@ -314,12 +334,14 @@ "Delete": "Delete", "Delete alert word": "Delete alert word", "Delete all drafts": "Delete all drafts", + "Delete all selected drafts": "Delete all selected drafts", "Delete code playground?": "Delete code playground?", "Delete custom profile field?": "Delete custom profile field?", "Delete data export?": "Delete data export?", "Delete draft": "Delete draft", "Delete file": "Delete file", "Delete file?": "Delete file?", + "Delete group": "", "Delete icon": "Delete icon", "Delete linkifier?": "Delete linkifier?", "Delete logo": "Delete logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Depending on the size of your organisation, an export can take anywhere from seconds to an hour.", "Deprecation notice": "Deprecation notice", "Description": "Description", + "Deselect draft": "Deselect draft", "Desktop": "Desktop", "Desktop & mobile apps": "Desktop & mobile apps", "Desktop message notifications": "Desktop message notifications", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Detailed message formatting documentation", "Detailed search filters documentation": "Detailed search filters documentation", "Direct message": "Direct message", + "Direct message to me": "", "Direct messages": "Direct messages", "Direct messages and mentions": "Direct messages and mentions", "Direct messages are disabled in this organization.": "Direct messages are disabled in this organisation.", "Direct messages disabled": "Direct messages disabled", + "Disable": "Disable", "Disable notifications?": "Disable notifications?", "Disabled": "Disabled", "Discard": "Discard", @@ -360,9 +385,9 @@ "Display my availability to other users": "Display my availability to other users", "Display names of reacting users when few users have reacted to a message": "Display names of reacting users when few users have reacted to a message", "Display on user card": "Display on user card", - "Display settings": "Display settings", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?", "Do you want to add everyone?": "Do you want to add everyone?", + "Do you want to mark them all as read?": "", "Domain": "Domain", "Don’t allow disposable email addresses": "Don’t allow disposable email addresses", "Download": "Download", @@ -388,7 +413,7 @@ "Edit custom profile field": "Edit custom profile field", "Edit linkfiers": "Edit linkfiers", "Edit message": "Edit message", - "Edit or reschedule message": "Edit or reschedule message", + "Edit profile": "", "Edit selected draft": "Edit selected draft", "Edit selected message or view source": "Edit selected message or view source", "Edit status": "Edit status", @@ -398,7 +423,6 @@ "Edit your last message": "Edit your last message", "Edit your profile": "Edit your profile", "Edit {group_name}": "Edit {group_name}", - "Edited ({last_edit_timestr})": "Edited ({last_edit_timestr})", "Edited by {full_name}": "Edited by {full_name}", "Education (for-profit)": "Education (for-profit)", "Education (non-profit)": "Education (non-profit)", @@ -461,6 +485,7 @@ "External account type": "External account type", "External link": "External link", "Failed": "Failed", + "Failed adding one or more streams.": "Failed adding one or more streams.", "Failed to create video call.": "Failed to create video call.", "Failed to generate preview": "Failed to generate preview", "Failed to upload %'{file}'": "Failed to upload %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filter exports", "Filter groups": "Filter groups", "Filter invites": "Filter invites", - "Filter languages": "Filter languages", "Filter linkifiers": "Filter linkifiers", "Filter members": "Filter members", "Filter muted users": "Filter muted users", - "Filter roles": "Filter roles", "Filter streams": "Filter streams", "Filter subscribers": "Filter subscribers", "Filter topics": "Filter topics", @@ -500,6 +523,9 @@ "First message": "First message", "First time? Read our guidelines for creating and naming streams.": "First time? Read our guidelines for creating and naming streams.", "First time? Read our guidelines for creating user groups.": "First time? Read our guidelines for creating user groups.", + "Follow": "Follow", + "Followed": "Followed", + "Followed topics": "Followed topics", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "For example, to configure a code playground for code blocks tagged as Python, you can set:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "For more examples and technical details, see the help center documentation on adding code playgrounds.", "For more examples, see the help center documentation on adding linkifiers.": "For more examples, see the help center documentation on adding linkifiers.", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY attribution", "GIPHY integration": "GIPHY integration", "General": "General", + "Generate URL for an integration": "", "Generate email address": "Generate email address", "Generate invite link": "Generate invite link", "Generate new API key": "Generate new API key", @@ -542,14 +569,18 @@ "High contrast mode": "High contrast mode", "Hint": "Hint", "Hint (up to 80 characters)": "Hint (up to 80 characters)", + "How would you like to invite users?": "How would you like to invite users?", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "However, it will no longer be subscribed to the private streams that you are not subscribed to.", "Humans": "Humans", "Idle": "Idle", "If you don't know your password, you can reset it.": "If you don't know your password, you can reset it.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!", "Ignored deactivated users:": "Ignored deactivated users:", "Image": "Image", "In a meeting": "In a meeting", "Inactive": "Inactive", "Inactive bots": "Inactive bots", + "Inbox": "", "Include DMs": "Include DMs", "Include content of direct messages in desktop notifications": "Include content of direct messages in desktop notifications", "Include message content in message notification emails": "Include message content in message notification emails", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Incoming webhooks can only send messages.", "Initiate a search": "Initiate a search", "Insert new line": "Insert new line", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrations", "Interface": "Interface", "Invalid URL": "Invalid URL", @@ -581,6 +614,8 @@ "Inviting...": "Inviting...", "Italic": "Italic", "January": "January", + "Jitsi server URL": "", + "Join audio call.": "Join audio call.", "Join video call.": "Join video call.", "Join {realm_name}": "Join {realm_name}", "Joined": "Joined", @@ -599,8 +634,10 @@ "Last 30 days": "Last 30 days", "Last 6 months": "Last 6 months", "Last active": "Last active", + "Last edited {last_edit_timestr}": "Last edited {last_edit_timestr}", "Last message": "Last message", "Last modified": "Last modified", + "Last moved {last_edit_timestr}": "Last moved {last_edit_timestr}", "Learn more": "Learn more", "Learn more about mentions here.": "Learn more about mentions here.", "Learn more about starring messages here.": "Learn more about starring messages here.", @@ -623,6 +660,7 @@ "Log out": "Log out", "Looking for our integrations or API documentation?": "Looking for our integrations or API documentation?", "MOVED": "MOVED", + "Main menu": "Main menu", "Manage bot": "Manage bot", "Manage streams": "Manage streams", "Manage this bot": "Manage this bot", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mention a time-zone-aware time", "Mentioned in": "Mentioned in", "Mentions": "Mentions", - "Menu": "Menu", "Menus": "Menus", "Message #{stream_name}": "Message #{stream_name}", "Message #{stream_name} > {topic_name}": "Message #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Message {recipient_names}", "Message {recipient_name} ({recipient_status})": "Message {recipient_name} ({recipient_status})", "Messages in all public streams": "Messages in all public streams", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Messages will not be automatically marked as read because this is not a conversation view. Change setting", "Messages will not be automatically marked as read. Change setting": "Messages will not be automatically marked as read. Change setting", "Mobile": "Mobile", @@ -681,11 +720,11 @@ "Move some messages?": "Move some messages?", "Move this and all following messages in this topic": "Move this and all following messages in this topic", "Move topic": "Move topic", - "Moved ({last_edit_timestr})": "Moved ({last_edit_timestr})", "Moved by {full_name}": "Moved by {full_name}", "Moving messages": "Moving messages", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users", + "Mute": "Mute", "Mute stream": "Mute stream", "Mute this user": "Mute this user", "Mute topic": "Mute topic", @@ -734,38 +773,42 @@ "New password is too weak": "New password is too weak", "New stream announcements": "New stream announcements", "New stream message": "New stream message", + "New stream notifications": "New stream notifications", "New task": "New task", "New topic": "New topic", "New user announcements": "New user announcements", + "New user notifications": "New user notifications", "Next message": "Next message", "Next unread direct message": "Next unread direct message", "Next unread topic": "Next unread topic", - "Next week": "Next week", "No bots match your current filter.": "No bots match your current filter.", + "No conversations match your filters.": "", "No custom emoji.": "No custom emoji.", + "No custom profile field configured for this organization.": "No custom profile field is configured for this organisation.", "No default streams match you current filter.": "No default streams match you current filter.", "No description.": "No description.", + "No drafts selected": "No drafts selected", "No drafts.": "No drafts.", "No exports.": "No exports.", "No invites match your current filter.": "No invites match your current filter.", "No language set": "No language set", "No linkifiers set.": "No linkifiers set.", + "No matching results": "", "No matching users.": "No matching users.", "No one has read this message yet.": "No one has read this message yet.", "No owner": "No owner", "No playgrounds configured.": "No playgrounds configured.", "No restrictions": "No restrictions", "No scheduled messages.": "No scheduled messages.", - "No search results": "No search results", "No search results.": "No search results.", "No stream subscriptions.": "No stream subscriptions.", "No streams": "No streams", "No topics are marked as resolved.": "No topics are marked as resolved.", - "No topics match your current filter.": "No topics match your current filter.", "No user group subscriptions.": "No user group subscriptions.", "No user groups": "No user groups", "No user to subscribe.": "No user to subscribe.", "No users match your current filter.": "No users match your current filter.", + "No users to add.": "", "No, I'll catch up.": "No, I'll catch up.", "Nobody": "Nobody", "Nobody in this Zulip organization will be able to see this email address.": "Nobody in this Zulip organisation will be able to see this email address.", @@ -784,6 +827,7 @@ "Notify stream": "Notify stream", "Notify this user by email?": "Notify this user by email?", "November": "November", + "Numbered list": "", "October": "October", "Old password": "Old password", "Once you leave this group, you will not be able to rejoin.": "Once you leave this group, you will not be able to rejoin.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Only owners can change these settings.", "Only stream members can add users to a private stream": "Only stream members can add users to a private stream", "Only stream members can add users to a private stream.": "Only stream members can add users to a private stream.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.", "Only subscribers to this stream can edit stream permissions.": "Only subscribers to this stream can edit stream permissions.", "Open": "Open", "Open message menu": "Open message menu", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Please specify at least one valid recipient.", "Political group": "Political group", "Posted by {full_name}": "Posted by {full_name}", + "Preferences": "Preferences", "Press > for list of topics": "Press > for list of topics", "Prevent users from changing their avatar": "Prevent users from changing their avatar", "Prevent users from changing their email address": "Prevent users from changing their email address", @@ -869,6 +915,7 @@ "Previous message": "Previous message", "Privacy": "Privacy", "Privacy settings": "Privacy settings", + "Private streams cannot be default streams for new users.": "Private streams cannot be default streams for new users.", "Private, protected history": "Private, protected history", "Private, shared history": "Private, shared history", "Profile": "Profile", @@ -883,6 +930,7 @@ "Reactivate bot": "Reactivate bot", "Reactivate this bot": "Reactivate this bot", "Reactivate this user": "Reactivate this user", + "Reactivate user": "", "Reactivate {name}": "Reactivate {name}", "Read receipts": "Read receipts", "Read receipts are currently disabled in this organization.": "Read receipts are currently disabled in this organisation.", @@ -930,6 +978,7 @@ "Saved as draft": "Saved as draft", "Saved. Please reload for the change to take effect.": "Saved. Please reload for the change to take effect.", "Saving": "Saving", + "Schedule for {deliver_at}": "Schedule for {deliver_at}", "Schedule for {formatted_send_later_time}": "Schedule for {formatted_send_later_time}", "Schedule message": "Schedule message", "Scheduled messages": "Scheduled messages", @@ -948,10 +997,15 @@ "See how to configure email.": "See how to configure email.", "Select a stream": "Select a stream", "Select a stream below or change topic name.": "Select a stream below or change topic name.", - "Select date and time": "Select date and time", + "Select a stream to subscribe": "", + "Select all drafts": "Select all drafts", + "Select draft": "Select draft", "Select emoji": "Select emoji", "Select language": "Select language", + "Select stream": "Select stream", "Send": "Send", + "Send all notifications to a single topic": "", + "Send an email": "Send an email", "Send automated notice to new topic": "Send automated notice to new topic", "Send automated notice to old topic": "Send automated notice to old topic", "Send digest emails when I'm away": "Send digest emails when I'm away", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Show previews of uploaded and linked images", "Show starred message count": "Show starred message count", "Show status text": "Show status text", + "Show unread counts for": "", "Show/change your API key": "Show/change your API key", "Sign up": "Sign up", "Silent mentions do not trigger notifications.": "Silent mentions do not trigger notifications.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Sort by estimated weekly traffic", "Sort by name": "Sort by name", "Sort by number of subscribers": "Sort by number of subscribers", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Star", "Star selected message": "Star selected message", @@ -1024,8 +1080,10 @@ "Subscribe": "Subscribe", "Subscribe them": "Subscribe them", "Subscribe to/unsubscribe from selected stream": "Subscribe to/unsubscribe from selected stream", + "Subscribe {full_name} to streams": "", "Subscribed": "Subscribed", "Subscribed streams": "Subscribed streams", + "Subscribed successfully!": "Subscribed successfully!", "Subscriber count": "Subscriber count", "Subscribers": "Subscribers", "Successfully subscribed user:": "Successfully subscribed user:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "There are no current alert words.", "There are no messages here.": "There are no messages here.", "There are no streams you can view in this organization.": "There are no streams you can view in this organisation.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.", "They administer the following bots:": "They administer the following bots:", "This Zulip server is running an old version and should be upgraded.": "This Zulip server is running an old version and should be upgraded.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "This is not a publicly accessible conversation.", "This is what a Zulip notification looks like.": "This is what a Zulip notification looks like.", "This message could not be sent at the scheduled time.": "This message could not be sent at the scheduled time.", - "This message is no longer scheduled for {deliver_at}.": "This message is no longer scheduled for {deliver_at}.", + "This message is no longer scheduled to be sent.": "This message is no longer scheduled to be sent.", "This message was hidden because you have muted the sender.": "This message was hidden because you have muted the sender.", "This organization is configured so that administrators and moderators can add custom emoji.": "This organisation is configured so that administrators and moderators can add custom emoji.", "This organization is configured so that administrators and moderators can modify user groups.": "This organisation is configured so that administrators and moderators can modify user groups.", @@ -1103,7 +1162,6 @@ "Time zone": "Time zone", "Time's up!": "Time's up!", "Tip: You can also send \"/poll Some question\"": "Tip: You can also send \"/poll Some question\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.", "To invite users, please increase the number of licenses or deactivate inactive users.": "To invite users, please increase the number of licenses or deactivate inactive users.", "To preserve your reading state, this view does not mark messages as read.": "To preserve your reading state, this view does not mark messages as read.", "Today": "Today", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Toggle subscription", "Toggle the gear menu": "Toggle the gear menu", "Toggle topic mute": "Toggle topic mute", - "Tomorrow": "Tomorrow", "Tomorrow at {time}": "Tomorrow at {time}", "Topic": "Topic", "Topic muted": "Topic muted", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Turn off invisible mode", "Two factor authentication": "Two factor authentication", "Type": "Type", + "URL": "", + "URL for your integration": "", "URL pattern": "URL pattern", - "URL prefix": "URL prefix", "URL template": "URL template", "USERS": "USERS", "Uncheck all": "Uncheck all", @@ -1139,6 +1197,7 @@ "Unmute this user": "Unmute this user", "Unmute topic": "Unmute topic", "Unmuted": "Unmuted", + "Unmuted streams and topics": "", "Unpin stream from top": "Unpin stream from top", "Unread": "Unread", "Unread count badge (appears in desktop sidebar and browser tab)": "Unread count badge (appears in desktop sidebar and browser tab)", @@ -1199,7 +1258,7 @@ "View all streams": "View all streams", "View direct messages": "View direct messages", "View drafts": "View drafts", - "View edit history": "View edit history", + "View edit and move history": "View edit and move history", "View file": "View file", "View in playground": "View in playground", "View in {name}": "View in {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web-public", "Wednesday": "Wednesday", "Week of {date}": "Week of {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "What pronouns should people use to refer to you?", "When you deactivate , they will be immediately logged out.": "When you deactivate , they will be immediately logged out.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Which parts of the email should be included in the Zulip message sent to this stream?", "Who can access the stream?": "Who can access the stream?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Who can create and manage user groups", "Who can create private streams": "Who can create private streams", "Who can create public streams": "Who can create public streams", + "Who can create reusable invitation links": "Who can create reusable invitation links", "Who can create web-public streams": "Who can create web-public streams", "Who can delete their own messages": "Who can delete their own messages", - "Who can invite users to this organization": "Who can invite users to this organisation", "Who can move messages to another stream": "Who can move messages to another stream", "Who can move messages to another topic": "Who can move messages to another topic", "Who can post to the stream?": "Who can post to the stream?", + "Who can send email invitations to new users": "Who can send email invitations to new users", "Who can unsubscribe others from this stream?": "Who can unsubscribe others from this stream?", "Who can use @all/@everyone mentions in large streams": "Who can use @all/@everyone mentions in large streams", "Who can use direct messages": "Who can use direct messages", @@ -1268,14 +1329,17 @@ "You and": "You and", "You and {display_reply_to}": "You and {display_reply_to}", "You and {recipients}": "You and {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.", "You are not allowed to send direct messages in this organization.": "You are not allowed to send direct messages in this organisation.", "You are not currently subscribed to this stream.": "You are not currently subscribed to this stream.", "You are not subscribed to any streams.": "You are not subscribed to any streams.", "You are not subscribed to stream ": "You are not subscribed to stream ", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.", "You are using an old version of the Zulip desktop app with known security bugs.": "You are using an old version of the Zulip desktop app with known security bugs.", + "You are viewing all the bots in this organization.": "You are viewing all the bots in this organisation.", "You aren't subscribed to this stream and nobody has talked about that yet!": "You aren't subscribed to this stream and nobody has talked about that yet!", + "You can add a new bot or manage your own bots.": "You can add a new bot or manage your own bots.", + "You can manage your own bots.": "You can manage your own bots.", "You can also make tables with this Markdown-ish table syntax.": "You can also make tables with this Markdown-ish table syntax.", "You can combine search filters as needed.": "You can combine search filters as needed.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "You can fully access this community and participate in conversations by creating a Zulip account in this organisation.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organisation.", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organisation.", "You do not have permission to use wildcard mentions in this stream.": "You do not have permission to use wildcard mentions in this stream.", + "You do not have permissions to generate invite links in this organization.": "You do not have permission to generate invite links in this organisation.", + "You do not have permissions to send email invitations in this organization.": "You do not have permission to send email invitations in this organisation.", "You don't have any direct message conversations yet.": "You don't have any direct message conversations yet.", + "You follow this topic": "You follow this topic", "You get": "You get", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "You have mentions", "You have muted .": "You have muted .", + "You have muted this topic": "You have muted this topic", "You have no active bots.": "You have no active bots.", "You have no direct messages including {person} yet.": "You have no direct messages including {person} yet.", "You have no direct messages with these users yet.": "You have no direct messages with these users yet.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "You have not muted any users yet.", "You have not sent any direct messages to yourself yet!": "You have not sent any direct messages to yourself yet!", "You have not uploaded any files.": "You have not uploaded any files.", + "You have unmuted this topic": "You have unmuted this topic", "You haven't been mentioned yet!": "You haven't been mentioned yet!", "You haven't received any messages sent by {person} yet.": "You haven't received any messages sent by {person} yet.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "You must be an organisation administrator to create a stream without subscribing.", + "You must configure your email to access this feature.": "You must configure your email to access this feature.", "You need to be running Zephyr mirroring in order to send messages!": "You need to be running Zephyr mirroring in order to send messages!", "You searched for:": "You searched for:", "You subscribed to stream ": "You subscribed to stream ", "You type": "You type", "You unsubscribed from stream ": "You unsubscribed from stream ", + "You will get default notifications for this topic": "You will get default notifications for this topic", "You will not receive notifications about new messages.": "You will not receive notifications about new messages.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "You're not subscribed to this stream. You will not be notified if other users reply to your message.", "Your API key:": "Your API key:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Your Zulip account on has been deactivated, and you will no longer be able to log in.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "Your message has been scheduled for {deliver_at}.", "Your message is taking longer than expected to be sent. Sending…": "Your message is taking longer than expected to be sent. Sending…", "Your message was sent to a stream you have muted.": "Your message was sent to a stream you have muted.", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Zulip Server {display_version}", "Zulip Server {display_version} (modified)": "Zulip Server {display_version} (modified)", "Zulip Server {display_version} (patched)": "Zulip Server {display_version} (patched)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip needs to send email to confirm users' addresses and send notifications.", "Zulip needs your permission to enable desktop notifications.": "Zulip needs your permission to enable desktop notifications.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.", "[Configure]": "[Configure]", - "[Disable]": "[Disable]", - "[More…]": "[More…]", "[Quoting…]": "[Quoting…]", - "[Unset]": "[Unset]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "and {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "back to streams", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "does not apply to moderators and administrators", "group direct messages with {recipient}": "group direct messages with {recipient}", "he/him": "he/him", - "in 1 hour": "in 1 hour", - "in 20 minutes": "in 20 minutes", - "in 3 hours": "in 3 hours", "invisible mode off": "invisible mode off", "leafy green vegetable": "leafy green vegetable", "marketing": "marketing", "more conversations": "more conversations", "more topics": "more topics", - "or": "or", "she/her": "she/her", "they/them": "they/them", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} days ago", "{full_name} is typing…": "{full_name} is typing…", "{hours} hours ago": "{hours} hours ago", - "{items_selected} selected": "{items_selected} selected", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.", "{minutes} min to edit": "{minutes} min to edit", "{minutes} minutes ago": "{minutes} minutes ago", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}", "{seconds} sec to edit": "{seconds} sec to edit", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} local time", "{username} [said]({link_to_message}):": "{username} [said]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reacted with {emoji_name}" diff --git a/locale/eo/LC_MESSAGES/django.po b/locale/eo/LC_MESSAGES/django.po index bab420a807..680c0649e3 100644 --- a/locale/eo/LC_MESSAGES/django.po +++ b/locale/eo/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,46 +18,46 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -114,32 +114,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -259,7 +259,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -569,9 +569,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -589,9 +589,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -601,9 +601,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -912,7 +912,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -941,7 +941,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1172,8 +1171,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1181,7 +1332,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1191,647 +1374,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1859,15 +1435,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1882,6 +1453,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1895,6 +1471,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1913,6 +1501,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1920,6 +1518,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1931,204 +1541,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2138,6 +1553,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2155,6 +1575,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2162,6 +1587,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2186,14 +1625,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2212,6 +1651,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2229,6 +1680,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2236,6 +1694,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2330,6 +1796,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2343,6 +1827,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2351,6 +1880,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2413,6 +1956,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2441,6 +1992,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2449,6 +2088,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2465,6 +2127,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2740,7 +2460,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3249,16 +2969,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3267,7 +2987,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3324,27 +3044,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3384,72 +3104,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3468,74 +3182,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3568,32 +3290,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3603,38 +3325,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3654,7 +3376,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3675,12 +3397,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3711,90 +3434,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3865,31 +3592,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3969,131 +3696,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4138,7 +3864,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4151,92 +3877,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4430,67 +4156,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4514,8 +4227,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4528,101 +4241,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4645,498 +4445,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5229,57 +4983,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5297,19 +5079,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5325,25 +5107,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5366,26 +5148,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5414,33 +5196,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5448,7 +5230,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5468,88 +5250,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5595,87 +5368,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5756,27 +5529,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5800,24 +5573,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5836,7 +5609,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5844,20 +5617,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5892,20 +5665,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5917,10 +5690,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/eo/translations.json b/locale/eo/translations.json index c376c91f20..43acbef02c 100644 --- a/locale/eo/translations.json +++ b/locale/eo/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/es/LC_MESSAGES/django.po b/locale/es/LC_MESSAGES/django.po index fde1dfc41f..51ccd35cf1 100644 --- a/locale/es/LC_MESSAGES/django.po +++ b/locale/es/LC_MESSAGES/django.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Dickinson Roman Arismendy Torres, 2023\n" "Language-Team: Spanish (http://app.transifex.com/zulip/zulip/language/es/)\n" @@ -32,46 +32,47 @@ msgstr "" "Language: es\n" "Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "No está permitido para usuarios invitados" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organización inválida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Canales públicos" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Canales privados" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Mensajes directos" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Mensajes directos grupales" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Carácter desconocido: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "La hora de inicio es más tarde que la hora de fin. Inicio: {start}, Fin: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "No hay datos de analíticas disponible. Por favor, contacta con el administrador de tu servidor." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parámetros inválidos" @@ -132,29 +133,31 @@ msgid "" msgstr "Tu organización no tiene suficientes licencias de Zulip para invitar {num_invites} usuarios." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Debes cotizar al menos {} usuarios." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Facturas con más de {} licencias no pueden ser procesadas a través de esta página. Para completar la compra, por favor contactar {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Algo ha fallado. Contacta en {email}" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Algo salió mal. Por favor, recarga la página." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Algo salió mal. Por favor, espera unos segundos e inténtalo de nuevo." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -186,7 +189,7 @@ msgstr "No se puede actualizar el plan. El plan venció y se reemplazó con un n msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -202,14 +205,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Nada que cambiar" @@ -221,7 +224,7 @@ msgstr "¡No hay clientes para esta organización!" msgid "Session not found" msgstr "Sesión no encontrada" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Debes ser un administrador de facturación o un administrador de la organización." @@ -271,7 +274,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Error interno del servidor" @@ -573,9 +576,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -593,9 +596,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -605,9 +608,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Solicitar patrocinio" @@ -870,51 +873,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Registrarse con %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "¡Gracias por registrarte!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "¿Todavía no has recibido el correo? Podemos reenviártelo." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Por si acaso, échale un vistazo a tu carpeta de Spam." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Las actualizaciones pueden estar retrasadas." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Reintentar" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Mensajes" @@ -1162,6 +1165,159 @@ msgstr "Usuarios normales" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Enhorabuena, acaba de crear una nueva organización\n de Zulip: %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "¡Bienvenido a Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL Organización: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s en Zulip: Detalles de tu nueva organización" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s en Zulip: Detalles de tu nueva cuenta" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Enhorabuena, acaba de crear una nueva organización de Zulip: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Te haz unido a la organización Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1169,6 +1325,39 @@ msgstr "" msgid "Hi," msgstr "Hola:" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Si no solicitaste este cambio, por favor, contáctanos inmediatamente en <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1182,23 +1371,10 @@ msgstr "Hemos recibido una solicitud para cambiar la dirección de correo electr msgid "Confirm email change" msgstr "Confirmar cambio de correo" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verificar tu nueva dirección de correo electrónico" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Si no solicitaste este cambio, por favor, contáctanos inmediatamente en <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1252,17 +1428,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1367,225 +1532,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Enhorabuena, acaba de crear una nueva organización\n de Zulip: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "¡Bienvenido a Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL Organización: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s en Zulip: Detalles de tu nueva organización" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s en Zulip: Detalles de tu nueva cuenta" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Enhorabuena, acaba de crear una nueva organización de Zulip: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Te haz unido a la organización Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Ejemplos de temas cortos" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Ir a Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1670,14 +1616,14 @@ msgstr "Esta invitación caduca en dos días. Cuando esto ocurra, tendrás que p #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1709,21 +1655,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1731,21 +1701,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1788,29 +1758,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1973,6 +1943,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2001,6 +1979,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Ejemplos de temas cortos" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Ir a Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2389,7 +2439,7 @@ msgid "Incoming webhooks" msgstr "Webhooks de entrada" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Bots interactivos" @@ -2889,292 +2939,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Orden del mapeo inválido." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Id de campo {id} no encontrado." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Para proteger a los usuarios, Zulip limita el número de invitaciones que puedes enviar en un día. Ya que haz alcanzado el límite, no se enviaron invitaciones." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Tu cuenta es demasiado nueva para enviar invitaciones en esta organización. Pídeselo a un administrador de la organización, o a un usuario con más experiencia." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Algunos correos electrónicos no se han validado, por lo que no hemos enviado ninguna invitación." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "No hemos podido invitar a nadie." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Algunas de esas direcciones ya están usando Zulip, por lo que no les hemos enviado una invitación. ¡Enviamos invitaciones a todos los demás!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nada que cambiar" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Este tema ha sido movido a {new_location} por {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Un mensaje ha sido movido de este tema a {new_location} por {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} mensajes fueron movidos de este tema {new_location} por {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Este tema ha sido movido acá desde {old_location} por {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} mensajes fueron movidos acá desde {old_location} por {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Tu organización ha desactivado la edición de mensajes" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "No tienes permiso para editar este mensaje" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "El límite de tiempo para editar este mensaje ha pasado" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "No tienes permiso para usar menciones de comodín en este canal" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Mensaje(s) inválido(s)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "No se pudo renderizar el mensaje" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Los mensajes directos están deshabilitados para esta organización" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: el programador de la API envió contenido JSON inválido" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Ya existe la reacción." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Ya existe un emoticono personalizado con ese nombre." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3188,8 +3241,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3208,18 +3261,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3228,38 +3295,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Sin descripción." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3269,56 +3336,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID de usuario inválido {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "El grupo de usuarios '{}' ya existe." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Esta API no está disponible a los bots de webhook de entrada." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Cuenta no asociada con este subdominio" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Este endpoint no acepta peticiones de bots." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Debes ser un administrador del servidor" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permisos insuficientes" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Este endpoint requiere autentificación HTTP básica." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Cabecera de autorización inválida para la autentificación básica" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Falta la cabecera de autorización para la autentificación básica" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Los bots de webhook solo pueden acceder a los webhooks" @@ -3333,95 +3403,101 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "El subdominio necesita tener una longitud de 3 caracteres o superior." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "El subdominio no puede empezar o terminar con un '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "El subdominio solo puede tener letras minúsculas, números, y '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdominio no disponible. Por favor, escoge uno distinto." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Por favor, usa tu dirección de correo electrónico real." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "La organización a la que estás intentando unirte usando {email} no existe." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Por favor, solicita una invitación para {email} del administrador de la organización." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Tu dirección de correo electrónico, {email}, no está en uno de los dominios permitidos para el registro de cuentas en esta organización." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Las direcciones de correo electrónico que contienen símbolos + no están permitidas en esta organización." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nueva contraseña" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Por favor, introduce como máximo 10 correos." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "No se pudo encontrar la organización de Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Email inválido '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3485,31 +3561,31 @@ msgstr "Los subdominios no pueden empezar o terminar con un '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Los dominios solo pueden tener letras, números, '.' y '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "La marca de tiempo no puede ser negativa." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "El tema no puede contener bytes nulos." -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Debes especificar exactamente un ID de canal para mensajes de canal" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "El usuario ha deshabilitado la sincronización de borradores." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "El borrador no existe" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Notificaciones de Zulip" @@ -3542,166 +3618,166 @@ msgstr "Ya tiene una cuenta." msgid "Account has been deactivated." msgstr "La cuenta ha sido desactivada." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "El emoji '{}' no existe" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoticono personalizado inválido." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nombre de emoticono personalizado inválido." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "El emoticono personalizado ha sido desactivado." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Código de emoticono inválido." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nombre de emoticono inválido." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Tipo de emoticono inválido." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Debes ser un administrador de la organización o el autor del emoticono" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "No se pudo ubicar la cola de eventos" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Sesión no iniciada: autentificación API o sesión de usuario requerida" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "El canal '{stream}' no existe" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Canal con ID '{stream_id}' no existe" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Propietario de la organización" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "usuario" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "No se puede desactivar la única {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Sentencia de inclusión de markdown inválido {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "El uso de la API excedió el límite" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON malformado" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Debe ser un miembro de la organización" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Debes ser un administrador de la organización" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Debe ser un propietario de la organización" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Tu nombre de usuario o contraseña son incorrectos" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "La cuenta está desactivada." -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Esta organización ha sido desactivada" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "El servicio de notificaciones push móviles de tu organizacion ha sido desactivado" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "La autenticación por contraseña ha sido desactivado en esta organización" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Tu contraseña ha sido inhabilitada y debe ser establecida de nuevo" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Clave de API inválida" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Formato inválido de clave de API" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "El evento '{event_type}' no está actualmente soportado por el webhook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Subdominio inválido" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Acceso denegado" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3709,6 +3785,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Ya existe la reacción." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "No existe esa reacción." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3750,8 +3834,8 @@ msgid "Settings" msgstr "Ajustes" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Ir a Ajustes para configurar tus preferencias de notificaciones y pantalla." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3763,264 +3847,272 @@ msgid "" "and give it a go!" msgstr "Haz click aquí para empezar una nueva conversación. Escoge un tema (2-3 palabras es lo ideal), ¡y prúebalo!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Frameworks de integraciones" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integración continua" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Atención al cliente" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Despliegue" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Entretenimiento" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Comunicación" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finanzas" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Miscelánea" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gestión de proyectos" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productividad" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Control de versiones" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "El mensaje no puede estar vacío" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "El mensaje no puede contener bytes nulos" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operador {} no soportado." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operador de filtro inválido: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Si eres nuevo en Zulip, revisa nuestra [Guia de Inicio]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "¡Hola y bienvenido a Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "¡Yo también puedo ayudarte a iniciar!, Solo presiona en cualquier parte de este mensaje o presiona `r` para responder." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Estos son algunos mensajes que entiendo:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4035,669 +4127,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "El token no existe" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Usuario no autorizado para esta petición" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "No puedo decidir entre los argumentos '{var_name1}' y '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Falta el argumento '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Valor erróneo para '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Solo los administradores de la organización pueden enviar mensajes en este canal." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Por favor, proveer un 'canal'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Por favor, escoge uno: 'canal' o 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "ID de canal inválido" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Los datos sobre los suscriptores no están disponibles en este canal" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "No se puede recopilar los suscriptores para un canal privado" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} es demasiado largo (límite: {max_length} caracteres)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "La subida excedería el límite de subidas de tu organización." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "No se pudo decodificar imagen; ¿subiste un archivo de imagen?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "El tamaño de la imagen excede el límite." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grupo de usuarios inválido" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "¡Nombre demasiado largo!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "¡Nombre demasiado corto!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "¡Caracteres inválidos en el nombre!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "¡Ese nombre ya se está usando!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nombre o nombre de usuario erróneo" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Valor {} inválido {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "¡Datos de configuración inválidos!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tipo de bot inválido" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipo de interfaz inválido" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "No existe ese bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "No existe ese usuario" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "El usuario está desactivado" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} no puede estar vacío" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} es demasiado largo (límite: {max_length} caracteres)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} tiene una longitud incorrecta de {length}; debería ser {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' no puede estar vacío." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' no es una opción válida para '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Falta la cabecera '{header}' del evento HTTP" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Debería haber una barra al principio del zcomando." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "eventos de canal" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caracteres inválidos en el nombre del emoticono" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Administradores, moderadores, miembros e invitados" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Administradores, moderadores y miembros" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Administradores y moderadores" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Solo administradores" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nadie" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrador de la organización" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderador" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Miembro" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Invitado" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Público en Web" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Público" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Historia compartida, privada " -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Historia protegida, privada " -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Todos los miembros del canal pueden publicar" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Solo los administradores de la organización pueden publicar aquí." -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Solo los miembros definitivos de la organización pueden publicar aquí." -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoticonos unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoticonos personalizados" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoticonos extra de Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista de opciones" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Selector de personas" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Texto corto" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Texto largo" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Selector de fechas" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Enlace" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Cuenta externa" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronombres" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Dirección IP desconocida" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "un sistema operativo desconocido" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Un navegador desconocido" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Falta el argumento 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Falta el argumento 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4765,66 +4946,99 @@ msgstr "Ya existe un campo con ese nombre." msgid "Default custom field cannot be updated." msgstr "El campo personalizado por defecto no puede ser actualizado." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Debes especificar al menos una dirección de correo." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "El canal con id: {} no existe. No se enviaron invitaciones." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "No existe esa invitación" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "El historial de edición de mensajes está desactivado en esta organización" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "No tienes permiso para eliminar este mensaje" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "El límite de tiempo para eliminar este mensaje ha pasado" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "El mensaje ya fue eliminado" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4832,22 +5046,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Falta el remitente" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "El mirroring no esta permitido con los IDs de usuario de los destinatarios" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Mensaje reflejado inválido" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "El mirroring de Zephyr no está permitido en esta organización" @@ -4863,26 +5078,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "La disponibilidad no está soportada por los usuarios de bots." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "El cliente no paso valores nuevos." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4899,37 +5115,37 @@ msgid "" "emoji_code" msgstr "Al menos uno de los siguientes arguments debe estar presente: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "No existe esa reacción." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Al menos un método de autentificación debe ser activado" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider {} inválido" - -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" + +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Dominio invalido: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4941,42 +5157,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Debes subir exactamente un archivo." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Excedió el limite de la tasa." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID de exportación de datos inválida." -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Exportación ya eliminada" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4984,7 +5201,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Debes subir exactamente un icono." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4992,107 +5209,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "Debes subir exactamente un logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Usuario no autorizado a ejecutar peticiones en nombre de '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Debes pasar \"new_description\" o \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Valor inválido para \"op\". Especifica uno entre \"add\" o \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "¡El canal ya tiene ese nombre!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nada que hacer. Especifica al menos uno de \"add\" o \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Solo puedes invitar a otros usuarios del mirror de Zephyr a canales privados." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "nuevos canales" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "JSON inválido para el submensaje" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

No estás autorizado a ver este archivo.

" @@ -5108,97 +5318,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Archivo no encontrado.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Debes especificar un archivo a subir" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Solo puedes subir un archivo a la vez" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "No se han proporcionado datos nuevos" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Los cambios de avatar están desactivados para esta organización." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Los cambios de dirección de correo electrónico están desactivados en esta organización." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Tu contraseña de Zulip está gestionada en LDAP." -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "¡Contraseña incorrecta!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "La nueva contraseña es demasiado poco segura." -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Debes subir exactamente un avatar." @@ -5245,6 +5466,10 @@ msgstr "Nombre del bot integrado inválido." msgid "Username already in use" msgstr "Ese nombre de usuario ya se está usando" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5255,7 +5480,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Las direcciones de correo electrónico desechables no están disponibles en esta organización" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5274,27 +5500,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5314,28 +5540,28 @@ msgstr "Caché de Kerberos inválida" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Payload invalido" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Petición webhook desconocida" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "El tema no puede estar vacío" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "El contenido no puede estar vacío" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Entrada JSON malformada" @@ -5354,7 +5580,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5362,19 +5588,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "No se pudo gestionar el payload de Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Error: parámetro channels_map_to_topics distinto de 0 o 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Mensaje de Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5391,47 +5618,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Debe validarse con una clave de API válida del servidor de Zulip" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Tipo de token inválido" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} " +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Propiedad inválida {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Los datos no están ordenados." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Datos inválidos." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Debes reestablecer tu contraseña" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP inválida" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/es/translations.json b/locale/es/translations.json index 2e82c8c20c..86725223b3 100644 --- a/locale/es/translations.json +++ b/locale/es/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(oculto)", "(no description)": "(sin descripción)", "(no topic)": "(sin tema)", + "(or )": "", "(you)": "(tu)", "({message_retention_days} days)": "({message_retention_days} días)", "/dark (Switch to the dark theme)": "/dark (Cambiar al tema oscuro)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} no está subscrito a este canal. No será notificado si no le subscribes.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} tiene {number_of_invites_by_user} invitaciones sin expirar.", "Subscribe": "Suscribirse", - "Click here to learn about exporting private streams and messages.": "Haz clic aquí para aprender sobre cómo exportar canales privados y mensajes.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Mejora para más espacio.", " to add a new line": " para agregar una nueva linea", " to send": " para enviar", @@ -82,15 +83,18 @@ "Add alert word": "Añadir alerta", "Add all users": "Agregar todos los usuarios", "Add another user...": "Añadir otro usuario...", + "Add audio call": "", "Add code playground": "Agregar espacio para código fuente", + "Add default streams": "", + "Add email": "", "Add emoji": "Añadir emoticono", "Add emoji reaction": "Añadir reacción de emoticono", "Add extra emoji for members of the {realm_name} organization.": "Agregar un emoji adicional para los miembros de la organización {realm_name}.", "Add global time": "", "Add linkifier": "Añadir creador de enlaces", "Add members": "Agregar miembros", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Agregar miembro...", - "Add new default stream": "Añadir un nuevo canal por defecto", "Add new user group": "Agregar un nuevo grupo de usuarios", "Add one or more users": "Añade uno o más usuarios", "Add option": "Añadir opción", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Agregar subscriptores, Use grupousuarios o #nombrecanal para agregar subscriptores en lote", "Add task": "Añadir tarea", "Add video call": "Añadir videollamada", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "¡Añadido con éxito!", "Added successfully.": "Agregado satisfactoriamente.", "Administrator": "Administrador", @@ -124,6 +129,7 @@ "Alerted messages": "Mensajes con alertas", "All": "Todas", "All direct messages": "Todos los mensajes directos", + "All groups": "", "All messages": "Todos los mensajes", "All messages including muted streams": "Todos los mensajes, incluyendo canales silenciados. ", "All streams": "Todos los canales", @@ -136,9 +142,11 @@ "Allow subdomains": "Permitir subdominios", "Allowed domains": "Dominios permitidos", "Allowed domains: {domains}": "Dominios permitidos: {domains}", + "Already members:": "", "Already not subscribed.": "Aún no suscrito.", "Already subscribed to {stream}": "Ya suscrito a {stream}", "Already subscribed users:": "Usuarios ya suscritos:", + "Already subscribed.": "", "Always": "Siempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Una clave de API puede ser usada para acceder de forma automática a una cuenta de Zulip. Cualquiera con acceso a tu clave de API puede leer tus mensajes, enviar mensajes en tu nombre, e impersonarte en general en Zulip, así que deberías proteger tu clave de API tan cuidadosamente como proteges tu contraseña.
Te recomendamos crear bots, y usar sus cuentas y claves de API para acceder a la API de Zulip, a no ser que la tarea requiera acceso a tu cuenta.", "An hour ago": "Hace una hora", @@ -150,6 +158,7 @@ "Archive ?": "¿Archivar ?", "Archive stream": "Archivar canal", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Archivar el canal desuscribirá inmediatamente a todos los participantes. Esta acción no se puede deshacer.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "¿Estás seguro que deseas continuar?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "¿Estás seguro que deseas crear el canal ''''{stream_name}'''' y suscribir {count} usuarios a él?", "Are you sure you want to deactivate this organization?": "¿Estás seguro que quieres desactivar esta organización?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "¿Estás seguro que deseas reenviar la invitación a ?", "Are you sure you want to revoke the invitation to {email}?": "¿Estás seguro que deseas revocar la invitación a {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "¿Estás seguro que deseas revocar el vínculo de invitación creado por {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "¿Estás seguro que quieres enviar notificaciones de mención @ a los {subscriber_count} usuarios suscritos a #{stream_name}?. Si no lo estás, por favor edita tu mensaje para eliminar la mención a @{wildcard_mention} .", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "¿Seguro que quieres quitar la estrella a todos los mensajes en ? Esta acción no se puede deshacer.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "¿Estas seguro de querer quitar la estrella a todos los mensajes con estrella? Esta acción no se puede deshacer.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Los cambios de avatar están deshabilitados en esta organización", "Avatar from Gravatar": "Avatar de Gravatar", "Back to streams": "Volver a canales", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Debido a que eres el único propietario de la organización, no puedes desactivar tu cuenta.", "Because you are the only subscriber, this stream will be automatically archived.": "Debido a que eres el único subscriptor, este canal será archivado automáticamente.", "Billing": "Facturación", @@ -190,8 +201,11 @@ "Bot owner": "Propietario del bot", "Bot type": "Tipo de bot", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "Explorar conversaciones recientes", "Browse streams": "Explorar canales", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Negocios", "Busy": "Ocupado", "By deactivating your account, you will be logged out immediately.": "Al desactivar tu cuenta, serás desconectado inmediatamente.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Haz click acá para mostarar.", "Click on the pencil () icon to edit and reschedule a message.": "Haz click en el ícono de lápiz () para editar y reprogramar un mensaje.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Haz click fuera de la caja de texto para guardar. Notificaremos automáticamente a cualquiera que haya sido añadido o eliminado.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Haz click para ver o descargar.", "Close": "Cerrar", "Close modal": "Cerrar diálogo", @@ -232,7 +248,7 @@ "Commuting": "Viajando", "Compact": "Compacto", "Complete": "Completado", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Completa el perfil de la organización para personalizar y expicar el propósito de esta organización Zulip.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Escribir mensaje", "Compose your message here": "Escribe tu mensaje aquí", "Compose your message here...": "Escribe tu mensaje aquí...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Convertir los emoticonos antes de enviarlos (:) se convierte en 😃)", "Cookie Bot": "Bot de Cookies", "Copied!": "¡Copiado!", + "Copy URL": "", "Copy address": "Copiar dirección", "Copy and close": "Copiar y cerrar", "Copy code": "Copiar código", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Actualmente viendo todos los mensajes", "Currently viewing the entire stream.": "Actualmente viendo el canal completo", "Custom": "Personalizado", + "Custom URL": "", "Custom emoji": "Emoticonos personalizados", "Custom language: {query}": "Lenguaje personalizado: {query}", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Desactivado", "Deactivated users": "Usuarios desactivados", "December": "Diciembre", + "Default": "", "Default for stream": "Defecto para el canal", "Default is {language}. Use 'text' to disable highlighting.": "Por defecto es {language}. Usa 'text' para desabilitar el resaltado.", "Default language for code blocks": "Lenguaje por defecto para bloques de código", "Default streams": "Canales por defecto", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Canales por defecto para esta organización", "Default user settings": "Ajustes de usuario por defecto", "Default view": "Vista por defecto", @@ -314,12 +334,14 @@ "Delete": "Eliminar", "Delete alert word": "Eliminar alerta", "Delete all drafts": "Eliminar todos los borradores", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "¿Eliminar campo personalizado de perfil?", "Delete data export?": "¿Eliminar exportación de datos?", "Delete draft": "Eliminar borrador", "Delete file": "Eliminar archivo", "Delete file?": "¿Eliminar archivo?", + "Delete group": "", "Delete icon": "Eliminar icono", "Delete linkifier?": "", "Delete logo": "Borrar logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Dependiendo del tamaño de tu organización, las exportaciones pueden tardar de segundos a horas.", "Deprecation notice": "Aviso de obsolescencia", "Description": "Descripción", + "Deselect draft": "", "Desktop": "Escritorio", "Desktop & mobile apps": "Aplicaciones para móvil y escritorio", "Desktop message notifications": "Notificación de mensajes en el escritorio", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentación detallada sobre el formato de los mensajes", "Detailed search filters documentation": "Documentacion detallada de filtros de búsqueda", "Direct message": "Mensaje Directo", + "Direct message to me": "", "Direct messages": "Mensajes Directos", "Direct messages and mentions": "Mensajes directos y todas las menciones", "Direct messages are disabled in this organization.": "Los mensajes directos están deshabilitados para esta organización", "Direct messages disabled": "Mensajes directos deshabilitados", + "Disable": "", "Disable notifications?": "¿Desactivar notificaicones?", "Disabled": "Desactivado", "Discard": "Descartar", @@ -360,9 +385,9 @@ "Display my availability to other users": "Mostrar mi disponibilidad a otros usuarios", "Display names of reacting users when few users have reacted to a message": "Mostrar los nombres de los usuarios que reaccionaron cuando hay pocas reacciones a un mensaje", "Display on user card": "Mostrar en tarjeta de usuario", - "Display settings": "Ajustes de visualización", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "¿Deseas agregar a todos?", + "Do you want to mark them all as read?": "", "Domain": "Dominio", "Don’t allow disposable email addresses": "No permitir direcciones de correo electrónico desechables", "Download": "Descargar", @@ -388,7 +413,7 @@ "Edit custom profile field": "Editar campo personalizado de perfil", "Edit linkfiers": "", "Edit message": "Editar mensaje", - "Edit or reschedule message": "Editar o reprogramar mensaje", + "Edit profile": "", "Edit selected draft": "Editar el borrador seleccionado", "Edit selected message or view source": "Editar mensaje seleccionado o ver fuente", "Edit status": "Editar estado", @@ -398,7 +423,6 @@ "Edit your last message": "Editar tu último mensaje", "Edit your profile": "Edita tu perfil", "Edit {group_name}": "Editar {group_name}", - "Edited ({last_edit_timestr})": "Editado ({last_edit_timestr})", "Edited by {full_name}": "Editado por {full_name}", "Education (for-profit)": "Educación (lucro)", "Education (non-profit)": "Educación (sin-lucro)", @@ -461,6 +485,7 @@ "External account type": "Tipo de cuenta externa", "External link": "Enlace externo", "Failed": "Error", + "Failed adding one or more streams.": "", "Failed to create video call.": "Fallo al realizar video llamada.", "Failed to generate preview": "Fallo al generar la previsualización", "Failed to upload %'{file}'": "Error al subir %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filtrar exportaciones", "Filter groups": "Filtrar grupos", "Filter invites": "Filtrar invitaciones", - "Filter languages": "Filtrar idiomas", "Filter linkifiers": "Filtrar enlazadores", "Filter members": "Filtrar miembros", "Filter muted users": "Filtrar usuarios silenciados", - "Filter roles": "Filtrar roles", "Filter streams": "Filtrar canales", "Filter subscribers": "Filtrar subscriptores", "Filter topics": "Filtrar temas", @@ -500,6 +523,9 @@ "First message": "Primer mensaje", "First time? Read our guidelines for creating and naming streams.": "¿Primera vez? Lee nuestros lineamientos para crear y nombrar canales.", "First time? Read our guidelines for creating user groups.": "¿Primera vez? Lee nuestros lineamientos para crear grupos de usuarios.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Por ejemplo, para configurar un playground para bloques de código Python, puedes usar:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Para más ejemplos y detalles ténicos, mira la documentación en el centro de ayuda a cerca de agregar playgrounds de código.", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Atribución de GIPHY", "GIPHY integration": "Integración de GIPHY", "General": "General", + "Generate URL for an integration": "", "Generate email address": "Generar dirección de email", "Generate invite link": "Crear enlace de invitación", "Generate new API key": "Generar nueva clave de API", @@ -542,14 +569,18 @@ "High contrast mode": "Modo de alto contraste", "Hint": "Pista", "Hint (up to 80 characters)": "Pista (hasta 80 caracteres)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humanos", "Idle": "Inactivo", "If you don't know your password, you can reset it.": "Si no sabes la contraseña, puedes reestablecerla.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Usuarios desactivados ignorados:", "Image": "Imagen", "In a meeting": "En una reunión", "Inactive": "Inactivo", "Inactive bots": "Bots inactivos", + "Inbox": "", "Include DMs": "Incuír MDs", "Include content of direct messages in desktop notifications": "Incluír contenido de los mensajes directos en las notificaciones de escritorio", "Include message content in message notification emails": "Incluir el contenido de los mensajes en las notificaciones por correo electrónico", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Los webhooks de entrada solo pueden enviar mensajes.", "Initiate a search": "Comenzar una busqueda", "Insert new line": "Insertar una nueva línea", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integraciones", "Interface": "Interfaz", "Invalid URL": "URL inválida", @@ -581,6 +614,8 @@ "Inviting...": "Invitando...", "Italic": "Cursiva", "January": "Enero", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "Unirse a la video llamada", "Join {realm_name}": "Unirse a {realm_name}", "Joined": "Se unió", @@ -599,8 +634,10 @@ "Last 30 days": "Últimos 30 días", "Last 6 months": "Últimos 6 meses.", "Last active": "Activo por última vez", + "Last edited {last_edit_timestr}": "", "Last message": "Último mensaje", "Last modified": "Última modificación", + "Last moved {last_edit_timestr}": "", "Learn more": "Aprender más", "Learn more about mentions here.": "Aprende más acerca de las menciones acá.", "Learn more about starring messages here.": "Aprende más a cerca de los mensajes destacados acá.", @@ -623,6 +660,7 @@ "Log out": "Salir", "Looking for our integrations or API documentation?": "¿Estás buscando a cerca de las integraciones o documentación de laAPI?", "MOVED": "MOVIDO", + "Main menu": "", "Manage bot": "Administrar bot", "Manage streams": "Gestionar canales", "Manage this bot": "Administrar este bot", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mencionar un tiempo con zona horaria", "Mentioned in": "Mencionado en", "Mentions": "Menciones", - "Menu": "Menú", "Menus": "Menus", "Message #{stream_name}": "Enviar mensaje a #{stream_name}", "Message #{stream_name} > {topic_name}": "Enviar mensaje a #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Enviar mensaje a {recipient_names}", "Message {recipient_name} ({recipient_status})": "Enviar mensaje a {recipient_name} ({recipient_status})", "Messages in all public streams": "Mensajes en todos los canales públicos", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Los mensajes no se marcarán como leídos porque esta no es una vista de conversación. Cambiar configuración", "Messages will not be automatically marked as read. Change setting": "Mensajes leídos no se marcarán automáticamente como leídos. Cambiar configuración", "Mobile": "Móvil", @@ -681,11 +720,11 @@ "Move some messages?": "¿Mover algunos mensajes?", "Move this and all following messages in this topic": "Mover este y todos los siguientes mensajes en este tema", "Move topic": "Mover tema", - "Moved ({last_edit_timestr})": "Movido ({last_edit_timestr})", "Moved by {full_name}": "Movido por {full_name}", "Moving messages": "Moviendo mensajes", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Deben ser invitados por un subscriptor; los nuevos subscriptores pueden ver mensajes desde después de unirse; oculto a usuarios no administradores", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Deben ser invitados por un subscriptor; los nuevos subscriptores pueden ver el historial completo; oculto a usuarios no administradores", + "Mute": "", "Mute stream": "Silenciar canal", "Mute this user": "Silenciar este usuario", "Mute topic": "Silenciar tema", @@ -734,38 +773,42 @@ "New password is too weak": "La nueva contraseña es demasiado débil", "New stream announcements": "Nuevos anuncios de canal", "New stream message": "Nuevo mensaje de canal", + "New stream notifications": "", "New task": "Nueva tarea", "New topic": "Nuevo tema", "New user announcements": "Nuevos anuncios de usuario", + "New user notifications": "", "Next message": "mensaje siguiente", "Next unread direct message": "Siguiente mensaje directo no leido", "Next unread topic": "Siguiente tema sin leer", - "Next week": "Próxima semana", "No bots match your current filter.": "No hay bots que coincidan con tu filtro actual.", + "No conversations match your filters.": "", "No custom emoji.": "Sin emoticonos personalizados.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Ningún canal por defecto coincide con tu filtro actual.", "No description.": "Sin descripción.", + "No drafts selected": "", "No drafts.": "No hay borradores.", "No exports.": "Ninguna exportación.", "No invites match your current filter.": "Ninguna invitación se ajusta a tu filtro actual", "No language set": "Idioma no establecido", "No linkifiers set.": "No se aplicaron creadores de enlaces.", + "No matching results": "", "No matching users.": "No hay coincidencias de usuario.", "No one has read this message yet.": "Nadie ha leido este mensaje aún.", "No owner": "Sin dueño", "No playgrounds configured.": "No hay playgrounds configurados", "No restrictions": "Sin restricciones", "No scheduled messages.": "No hay mensajes programados.", - "No search results": "Sin resultados de búsqueda", "No search results.": "Sin resultados de búsqueda.", "No stream subscriptions.": "No hay subscripciones a canal.", "No streams": "No hay canales", "No topics are marked as resolved.": "Ningún tema ha sido marcado como resuelto.", - "No topics match your current filter.": "No hay temas que coincidan con tu filtro actual.", "No user group subscriptions.": "No hay subscripciones de grupo de usuarios.", "No user groups": "No hay grupos de usuarios.", "No user to subscribe.": "Ningún usuario para suscribirse.", "No users match your current filter.": "No hay usuarios que coincidan con tu filtro actual.", + "No users to add.": "", "No, I'll catch up.": "No, me pondré al día.", "Nobody": "Nadie", "Nobody in this Zulip organization will be able to see this email address.": "Nadie en esta organización Zulip podrá ver esta dirección de email.", @@ -784,6 +827,7 @@ "Notify stream": "Notificar canal", "Notify this user by email?": "¿Notificar este usuario por email?", "November": "Noviembre", + "Numbered list": "", "October": "Octubre", "Old password": "Clave antigua", "Once you leave this group, you will not be able to rejoin.": "Una vez abandones este grupo, no podrás volverte a unir.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Solo los propietarios pueden cambiar esas configuraciones.", "Only stream members can add users to a private stream": "Solo miembros del canal pueden añadir usuarios al canal privado", "Only stream members can add users to a private stream.": "Solo miembros del canal pueden agregar usuarios a un canal privado.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Solo los subscriptores de este canal pueden editar los permisos del canal.", "Open": "Abrir", "Open message menu": "Abrir el menú de mensajes", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Por favor específica al menos un destinatario válido.", "Political group": "Grupo político", "Posted by {full_name}": "Publicado por {full_name}", + "Preferences": "", "Press > for list of topics": "Pulsa > para una lista de temas", "Prevent users from changing their avatar": "Evita que los usuarios cambien su avatar", "Prevent users from changing their email address": "Evita que los usuarios cambien su dirección de correo", @@ -869,6 +915,7 @@ "Previous message": "Mensaje anterior", "Privacy": "Privacidad", "Privacy settings": "Configuraciones de privacidad", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Historia protegida, privada ", "Private, shared history": "Historia compartida, privada ", "Profile": "Perfil", @@ -883,6 +930,7 @@ "Reactivate bot": "Reactivar bot", "Reactivate this bot": "Reactivar este bot", "Reactivate this user": "Reactivar este usuario", + "Reactivate user": "", "Reactivate {name}": "Reactivar {name}", "Read receipts": "Confirmaciones de lectura", "Read receipts are currently disabled in this organization.": "Las confirmaciones de lectura están deshabilitadas en esta organización.", @@ -930,6 +978,7 @@ "Saved as draft": "Guardado como borrador", "Saved. Please reload for the change to take effect.": "", "Saving": "Guardando", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Mira cómo configurar el correo.", "Select a stream": "", "Select a stream below or change topic name.": "Seleccionar un canal a continuación o cambiar el nombre del tema", - "Select date and time": "Seleccionar fecha y hora", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Seleccionar emoji", "Select language": "Seleccionar idioma", + "Select stream": "", "Send": "Enviar", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Enviar notificacion automática al nuevo tema", "Send automated notice to old topic": "Enviar notificación automática al tema viejo.", "Send digest emails when I'm away": "Enviar correos con un resumen cuando esté fuera", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Mostrar previsualizaciones de las imágenes subidas y enlazadas", "Show starred message count": "Mostrar contador de mensajes destacados", "Show status text": "Mostrar texto de estado", + "Show unread counts for": "", "Show/change your API key": "Mostrar/cambiar tu clave de API", "Sign up": "Registrarse", "Silent mentions do not trigger notifications.": "Menciones silenciosas no envían notificaciones", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Ordenar por tráfico semanal estimado", "Sort by name": "Ordenar por nombre", "Sort by number of subscribers": "Ordenar por número de suscriptores", + "Sort by unread message count": "", "Spoiler": "Destripe", "Star": "Destacar", "Star selected message": "Destacar el mensaje seleccionado", @@ -1024,8 +1080,10 @@ "Subscribe": "Suscribirse", "Subscribe them": "Suscribirlos", "Subscribe to/unsubscribe from selected stream": "Suscribirse/desuscribirse del canal seleccionado", + "Subscribe {full_name} to streams": "", "Subscribed": "Suscrito", "Subscribed streams": "Canales suscritos", + "Subscribed successfully!": "¡Suscrito exitosamente!", "Subscriber count": "Cantidad de suscriptores", "Subscribers": "Suscriptores", "Successfully subscribed user:": "Usuario suscrito satisfactoriamente:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "No hay palabras de alerta.", "There are no messages here.": "No hay mensajes acá.", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Este servidor Zulip está ejecutando una versión vieja y debería ser actualizado.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Esta no es una conversación publicamente accesible.", "This is what a Zulip notification looks like.": "Así es como se verá una notificación de Zulip", "This message could not be sent at the scheduled time.": "Este mensaje no puede ser enviado en la hora programada.", - "This message is no longer scheduled for {deliver_at}.": "Este mensaje ya no está programado para {deliver_at}.", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Este mensaje ha sido ocultado porque has silenciado al remitente.", "This organization is configured so that administrators and moderators can add custom emoji.": "Esta organización está configurada para que los administradores y moderadores puedan agregar emojis personalizados.", "This organization is configured so that administrators and moderators can modify user groups.": "Esta organización está configurada para que los administradores y moderadores puedan modificar grupos de usuarios.", @@ -1103,7 +1162,6 @@ "Time zone": "Zona horaria", "Time's up!": "¡Se acabó el tiempo!", "Tip: You can also send \"/poll Some question\"": "Consejo: Tambien puedes enviar \"/poll Alguna pregunta\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "Para preservar tu estado de confirmaciones de lectura, esta vista no marca los mensajes como leídos.", "Today": "Hoy", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Activar/Desactivar suscripción", "Toggle the gear menu": "Abrir el menú engranaje", "Toggle topic mute": "Silenciar/no silenciar tema", - "Tomorrow": "Mañana", "Tomorrow at {time}": "", "Topic": "Tema", "Topic muted": "Tema silenciado", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Apagar el modo invisible", "Two factor authentication": "Autenticación en dos pasos", "Type": "Tipo", + "URL": "URL", + "URL for your integration": "", "URL pattern": "Patrón URL", - "URL prefix": "Prefijo de URL", "URL template": "", "USERS": "USUARIOS", "Uncheck all": "Desmarcar todo", @@ -1139,6 +1197,7 @@ "Unmute this user": "No silenciar este usuario", "Unmute topic": "No silenciar el tema", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Desfijar canal de la parte de arriba ", "Unread": "Sin leer", "Unread count badge (appears in desktop sidebar and browser tab)": "Marca de mensajes sin leer (Aparece en la barra latareal de la app de escritorio y el navegador)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "Ver mensajes directos", "View drafts": "Ver borradores", - "View edit history": "Ver el historial de ediciones", + "View edit and move history": "", "View file": "Ver archivo", "View in playground": "Ver en playground", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "Público en Web", "Wednesday": "Miércoles", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "¡Te damos la bienvenida de vuelta! {unread_msgs_count} mensajes sin leer. ¿Marcar como leídos?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Tanto si menciones de wildcard como @all se tratan como menciones para el propósito de notificaciones. ", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Quiénes pueden acceder el canal?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "¿Quién puede crear y gestionar grupos de usuarios?", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "Quién puede eliminar sus propios mensajes", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Quiénes pueden publicar al canal?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Quienes pueden usar @all/@everyone menciones en canales largos", "Who can use direct messages": "Quien puede use mensajes directos", @@ -1268,14 +1329,17 @@ "You and": "Tú y", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "No estás autorizado para enviar mensajes directos en esta organización", "You are not currently subscribed to this stream.": "Actualmente no estás suscrito a este canal.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Estás usando una versión vieja de la aplicación de escritorio Zulip con problemas de seguridad conocidos.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "¡No estás suscrito a este canal y nadie ha hablado sobre esto todavía!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "No tienes permiso para usar menciones de wildcard en este canal", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Obtienes", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "No tienes ningún bot activo.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "Aún no tienes mensajes directos con esos usuarios", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "Aún no te haz enviado mensajes directos a ti mismo", "You have not uploaded any files.": "No has subido ningún archivo.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "¡No has sido mencionado todavía!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Debes ser un administrador de la organización para crear un canal sin suscribirte.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "¡Necesitas estar ejecutando el mirroring de Zephyr para enviar mensajes!", "You searched for:": "Tu búsqueda por:", "You subscribed to stream ": "", "You type": "Escribes", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "No tienes suscripción en este canal. No te llegarán notificaciones si otros usuarios contestan a tu mensaje.", "Your API key:": "Tu clave de API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Servidor Zulip {display_version}", "Zulip Server {display_version} (modified)": "Servidor Zulip {display_version} (modificado)", "Zulip Server {display_version} (patched)": "Servidor Zulip {display_version} (parchado)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip necesita enviar correos para confirmar las direcciones de los usuarios y enviar notificaciones.", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[Configurar]", - "[Disable]": "[Desactivar]", - "[More…]": "", "[Quoting…]": "[Citando…]", - "[Unset]": "[Desactivar]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "volver a canales", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "no aplica para moderadores y administradores", "group direct messages with {recipient}": "Mensajes directos de grupo con {recipient}", "he/him": "él", - "in 1 hour": "en 1 hora", - "in 20 minutes": "en 20 minutos", - "in 3 hours": "en 3 horas", "invisible mode off": "modo invisible apagado", "leafy green vegetable": "vegetal verde con hojas", "marketing": "marketing", "more conversations": "más conversaciones", "more topics": "más temas", - "or": "o", "she/her": "ella", "they/them": "elle", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {¡Hecho! {N} mensaje marcado como leído.} many {¡Hecho! {N} mensajes marcados como leídos.} other {¡Hecho! {N} mensajes marcados como leídos.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "hace {days_old} días", "{full_name} is typing…": "{full_name} está escribiendo…", "{hours} hours ago": "hace {hours} horas", - "{items_selected} selected": "{items_selected} seleccionados", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} min para editar", "{minutes} minutes ago": "Hace {minutes} minutos", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Este mensaje ha sido leído por {num_of_people} persona:} many {Este mensaje ha sido leído por {num_of_people} personas:} other {Este mensaje ha sido leído por {num_of_people} personas:}}", "{seconds} sec to edit": "{seconds} sec para editar", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [ha dicho]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reaccionó con {emoji_name}" diff --git a/locale/fa/LC_MESSAGES/django.po b/locale/fa/LC_MESSAGES/django.po index 434624f8cb..0983ef5fd2 100644 --- a/locale/fa/LC_MESSAGES/django.po +++ b/locale/fa/LC_MESSAGES/django.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Reza Askari, 2023\n" "Language-Team: Persian (http://app.transifex.com/zulip/zulip/language/fa/)\n" @@ -23,46 +23,47 @@ msgstr "" "Language: fa\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "کاربران مهمان دسترسی ندارند" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "سازمان نامعتبر است" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "جریان های عمومی" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "جریان های خصوصی" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "پیام خصوصی" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "پیام جمعی" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "نام جدول نامشخص است: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "تاریخ شروع پس از تاریخ پایان است. شروع: {start} ، پایان: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "داده های تحلیلی در دسترس نیست. لطفا با ادمین سرور تماس بگيريد. " -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "پارامترهای نامعتبر" @@ -123,29 +124,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "حداقل برای {} کاربر باید فاکتور کنید." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "صورتحساب‌هایی که دارای بیش از {} مجوز هستند نمی‌توانند از طریق این صفحه پردازش شوند. جهت تکمیل ارتقاء، با {} تماس بگیرید." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "مشکلی پیش آمده. لطفاً با {email} مکاتبه کنید." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "مشکلی وجود دارد. لطفا دوباره صفحه را بارگذاری کنید." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "مشکلی وجود دارد. لطفا چند لحظه صبر کرده و دوباره تلاش کنید." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -177,7 +180,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -193,14 +196,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -212,7 +215,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -262,7 +265,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "خطای داخلی در سرور" @@ -564,9 +567,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -584,9 +587,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -596,9 +599,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -861,51 +864,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "ثبت نام با %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "برای ثبت نام متشکریم!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "هنوز ایمیلی نیامده است؟ می توانیم دوباره ارسال کنیم." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "برای احتیاط، نگاهی هم به پوشه هرزنامه خود بیندازید. " - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "هم اکنون سعی کن." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "پبام ها" @@ -1153,6 +1156,159 @@ msgstr "کاربران معمولی" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "به Zulip خوش آمدید!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s در Zulip : جزئیات سازمان جدید شما" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s در Zulip : جزئیات سازمان جدید شما " + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "شما عضو سازمان %(realm_name)s در Zulip شده اید." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1160,6 +1316,39 @@ msgstr "" msgid "Hi," msgstr "سلام، " +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "اگر شما درخواست این تغییر را نداده اید لطفا سریعا در (%(support_email)s) با ما تماس بگیرید" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1173,23 +1362,10 @@ msgstr "ما درخواستی مبنی بر تغییر آدرس ایمیل بر msgid "Confirm email change" msgstr "تایید تغییر ایمیل" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "آدرس ایمیل جدید خود را تایید کنید" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "اگر شما درخواست این تغییر را نداده اید لطفا سریعا در (%(support_email)s) با ما تماس بگیرید" +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1243,17 +1419,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1358,225 +1523,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "به Zulip خوش آمدید!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s در Zulip : جزئیات سازمان جدید شما" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s در Zulip : جزئیات سازمان جدید شما " - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "شما عضو سازمان %(realm_name)s در Zulip شده اید." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "مثال هایی از موضوعات کوتاه" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "رفتن به Zulip " - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1661,14 +1607,14 @@ msgstr "این دعوت طی دو روز آینده منقضی خواهد شد، #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1700,21 +1646,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1722,21 +1692,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1779,29 +1749,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1964,6 +1934,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1992,6 +1970,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "مثال هایی از موضوعات کوتاه" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "رفتن به Zulip " + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2380,7 +2430,7 @@ msgid "Incoming webhooks" msgstr "وب هوک های ورودی " #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "رباتهای تعاملی" @@ -2880,292 +2930,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "طرح سفارش نامعتبر است. " -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "فیلد شناسه {id} یافت نشد. " -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "حساب کاربری شما جدیدا ايجاد شده است و نمی‌توانید در این سازمان دعوت ارسال کنید. از یک ادمین سازمان یا یک کاربر با تجربه تر بخواهید. " -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "برخی از ایمیل ها معتبر نیستند، بنابراین هیچ دعوتی ارسال نشد. " -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "دیگر نمی توانیم بیش از این دعوت داشته باشیم. " -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "برخی از این آدرس ها قبلا از Zulip استفاده کرده اند، بنابراین برای آنها دعوت ارسال نکردیم. برای بقیه دعوت ارسال شد! " -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "تغییری وجود ندارد" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "سازمان شما ویرایش پیام را غیرفعال کرده است" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "شما دسترسی ویرایش این پیام را ندارید" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "محدوده زمان ویرایش این پیام گذشته است" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "پیام (ها) نامعتبر " -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "امکان پردازش پیام وجود ندارد" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "گجت ها: API برنامه نویسی، محتوای Json نامعتبری ارسال کرده است" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "واکنش هم اکنون وجود دارد. " - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "یک ایموجی سفارشی با این نام قبلا تعریف شده است." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3179,8 +3232,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3199,18 +3252,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "جریان بسته شده است" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3219,38 +3286,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "بدون توضیح" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3260,56 +3327,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "شناسه کاربر نامعتبر {} " - -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/decorator.py:250 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" + +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "این API برای ربات های با وب هوک ورودی امکان پذیر نیست. " -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "حساب کاربری ارتباطی با زیر دامنه ندارد " -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "این پایانه درخواست های ربات ها را قبول نمی کند" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "باید یک ادمین سرور باشید" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "دسترسی کافی ندارید" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "این پایانه نیاز به احراز هویت پایه ای HTTP دارد. " -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "هدر مجوز برای احراز هویت پایه ای نامعتبر است " -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "فاقد هدر مجوز برای احراز هویت پایه ای است" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "ربات های وب هوک تنها می توانند به وب هوک ها دسترسی داشته باشند" @@ -3324,94 +3394,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "زیر دامنه باید طول 3 یا بزرگ تر داشته باشد. " -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "زیر دامنه نمی تواند با '-' شروع شود. " -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "زیر دامنه تنها می تواند شامل حروف کوچک، اعداد و '-' باشد. " -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "زیر دامنه در دسترس نیست. لطفا مورد دیگری انتخاب کنید. " +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "لطفا از آدرس ایمیل واقعی خود استفاده کنید. " -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "سازمانی که قصد عضویت در آن با استفاده از {email} را دارید وجود ندارد. " -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "لطفاً از ادمین سازمان درخواست یک دعوت برای {email} کنید. " -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "آدرس ایمیل شما، {email}، در هیچکدام از دامنه‌های تعریف شده برای ثبت نام حساب های کاربری در سازمان نیست. " -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "آدرس‌های ایمیل شامل + در این سازمان مجاز نیستند. " -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "کلمه عبور جدید" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "نشانه" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "لطفا حداکثر 10 ایمیل وارد کنید. " -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "ما نمی توانیم سازمان Zulip را پیدا کنیم. " #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3476,31 +3552,31 @@ msgstr "زیر دامنه ها نمی توانند با یک '-' شروع یا msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "دامنه تنها می تواند شامل حروف، اعداد، '.' و '-' ها باشد. " -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3533,166 +3609,166 @@ msgstr "قبلاً یک حساب کاربری دارد. " msgid "Account has been deactivated." msgstr "حساب کاربری غیر فعال شده است. " -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "ایموجی سفارشی اشتباه است. " -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "نام ایموجی سفارشی اشتباه است. " -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "این ایموجی سفارشی غیر فعال شده است. " -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "کد ایموجی اشتباه است. " -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "نام ایموجی اشتباه است. " -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "نوع ایموجی اشتباه است. " -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "باید یک ادمین سازمان یا مالک ایموجی باشید" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "امکان تخصیص صف برای رویداد وجود ندارد " -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "در سامانه نیستید: احراز هویت API یا نشست کاربر لازم است" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "جریان '{stream}' وجود ندارد " -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "جریان با شناسه '{stream_id}' وجود ندارد " -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "کاربر" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "امکان غیر فعال کردن تنها {entity} وجود ندارد " -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "استفاده از API بیش از نرخ مجاز است" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Json نادرست " -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "باید یک ادمین سازمان باشید" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "حساب کاربری غیر فعال می شود" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "این سازمان غیرفعال شده است " -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "کلید API اشتباه" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "رویداد '{event_type}' اکنون توسط وب هوک {webhook_name} پشتیبانی نمی شود " +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "زیردامنه اشتباه است" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "دسترسی محدود" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3700,6 +3776,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "واکنش هم اکنون وجود دارد. " + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "واکنش وجود ندارد" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3741,8 +3825,8 @@ msgid "Settings" msgstr "تنظیمات" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "به تنظیمات بروید تا اطلاع رسانی ها و تنظیمات نمایشی را پیکره بندی کنید." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3754,264 +3838,272 @@ msgid "" "and give it a go!" msgstr "اینجا کلیک کنید تا یک گفتگوی جدید شروع کنید. یک موضوع (2-3 کلمه ای بهترین است) انتخاب کنید و آغاز کنید!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "چارچوب های یکپارچه سازی" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "یکپارچه سازی پیوسته" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "پشتیبانی مشتری" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "استقرار" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "ارتباط" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "مالی" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "بازاریابی" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "متفرقه" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "مدیریت پروژه" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "بهره وری" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "کنترل نسخه" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "پیام نباید خالی باشد " -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "پیام نباید شامل بایت های نال (خالی) باشد" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "عملگر محدودسازی اشتباه است: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4026,669 +4118,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "نشانه وجود ندارد" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "کاربر اجازه این درخواست را ندارد " -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "امکان تشخیص بین آرگومان های '{var_name1}' و '{var_name2}' وجود ندارد" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "آرگومان '{var_name}' خالی است" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "مقدار '{var_name}' نادرست است: {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "تنها ادمین های سازمان می توانند به این جریان ارسال کنند. " -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "کاربران جدید نمیتوانند به این استریم پیام ارسال کنند." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "لطفا 'جریان' را وارد کنید." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "لطفا یکی را انتخاب کنید: 'جریان' یا 'شناسه جریان'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "اطلاعات عضو برای این جریان در دسترس نیست " -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "قادر به دریافت اعضای جریان خصوصی نیست" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} خیلی طولانی است (محدودیت: {max_length} کاراکتر)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "بارگذاری از حد تعیین شده برای سازمان بیش تر است." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "امکان بازکردن تصویر وجود ندارد؛ آیا یک فایل تصویری بارگذاری کردید؟" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "اندازه تصویر بیش از حدمجاز است." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "گروه کاربر اشتباه است" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "نام خیلی طولانی است!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "نام خیلی کوتاه است!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "کاراکترهای اشتباه در نام وجود دارد!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "نام قبلا استفاده شده است!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "نام یا نام کاربری نادرست است" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "مقدار {} برای {} اشتباه است ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "اطلاعات پیکره بندی اشتباه است!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "نوع ربات اشتباه است" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "نوع رابط اشتباه است" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "چنین رباتی وجود ندارد" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "چنین کاربری وجود ندارد" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "کاربر غیرفعال شده است " -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} نمی تواند خالی باشد." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} خیلی طولانی است (محدودیت: {max_length} کاراکتر)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr " {var_name} طول نادرست {length} را دارد که باید {target_length} باشد" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' نمی تواند خالی باشد." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' یک گزینه صحیح برای '{field_name}' نیست." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "هدر HTTP برای '{header}' خالی است" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "در ابتدای دستورات Zulip باید یک خط کج (/) باشد." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "رویدادهای جریان" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "کاراکترهای اشتباه در نام ایموجی وجود دارد " -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "فقط مدیران" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "ادمین سازمان" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "عضو" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "مهمان" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "عمومی" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "ایموجی یونیکد" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "ایموجی سفارشی" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "ایموجی های بیشتر Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "لیست گزینه ها" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "انتخاب کننده فرد" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "متن کوتاه" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "متن طولانی" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "انتخاب تاریخ" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "لینک" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "حساب کاربری خارجی" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "آدرس آی پی ناشناخته" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "یک سیستم عامل ناشناخته" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "یک مرورگر ناشناخته" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "آرگومان 'شناسه صف' خالی است" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "آرگومان 'شناسه آخرین رویداد' خالی است" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4756,66 +4937,99 @@ msgstr "یک فیلد با این برجسب قبلا تعریف شده است." msgid "Default custom field cannot be updated." msgstr "فیلد سفارشی پیش فرض نمی تواند به روز رسانی شود." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "شما باید حداقل یک آدرس ایمیل مشخص کنید." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "جریانی با شناسه {} وجود ندارد. دعوتی ارسال نشد." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "چنین دعوتی وجود ندارد" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "تاریخچه ویرایش پیام در این سازمان غیرفعال است" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "شما دسترسی حذف این پیام را ندارید" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "محدوده زمانی برای حذف این پیام گذشته است" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "پیام قبلا حذف شده است" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4823,22 +5037,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "ارسال کننده خالی است" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "آیینه کردن برای شناسه کاربرهای دریافت کننده مجاز نیست" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "پیام آیینه شده اشتباه است" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "آیینه سازی Zephyr در این سازمان مجاز نیست" @@ -4854,26 +5069,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "وضعیت حضور برای کاربران ربات پشتیبانی نمی شود." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "کلاینت هیچ مقدار جدیدی وارد نکرده است." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4890,37 +5106,37 @@ msgid "" "emoji_code" msgstr "حداقل یکی از آرگومان های زیر باید باشند: نام ایموجی، کد ایموجی" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "واکنش وجود ندارد" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "حداقل یک روش احرازهویت باید فعال باشد." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "دامنه اشتباه است: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4932,42 +5148,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "شما باید دقیقا یک فایل بارگذاری کنید." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "از محدودیت نرخ گذشته است." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "شناسه خروجی اطلاعات اشتباه است" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "خروجی قبلا حذف شده است" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4975,7 +5192,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "شما باید دقیقا یک آیکون بارگذاری کنید." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4983,107 +5200,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "شما باید دقیقا یک لوگو بارگذاری کنید." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "کاربر بعنوان '{principal}' مجاز به اجرای دستور پرس و جو نیست" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "شما باید یکی از پارامترهای \"توضیحات جدید\" یا \"نام گروه جدید\" را وارد کنید." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "مقدار \"op\" اشتباه است. یکی از مقادیر \"add\" یا \"remove\" را استفاده کنید." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "جریان قبلا همین نام را داشته است!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "کاری برای انجام نیست. حداقل یک مورد از \"add\" یا \"delete\" را مشخص کنید." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "شما تنها می توانید کاربران آیینه ای Zephyr را یه جریان های خصوصی دعوت کنید." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "جریان های جدید" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Json برای پیام زیرمجموعه اشتباه است" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

شما مجاز به دیدن این فایل نیستید.

" @@ -5099,97 +5309,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

فایل یافت نشد.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "شما باید برای بارگذاری یک فایل مشخص کنید" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "شما هر دفعه تنها می توانید یک فایل بارگذاری کنید" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "اطلاعات جدیدی وجود ندارد" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "تغییر آواتار در این سازمان غیرفعال است." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "تغییر آدرس ایمیل در این سازمان غیرفعال است." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "کلمه عبور Zulip شما در LDAP مدیریت می شود" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "کلمه عبور اشتباه است!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "رمز عبور جدید بسیار ضعیف است!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "شما باید دقیقا یک آواتار بارگذاری کنید." @@ -5236,6 +5457,10 @@ msgstr "نام ربات تعبیه شده اشتباه است." msgid "Username already in use" msgstr "نام کاربری قبلا استفاده شده است" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5246,7 +5471,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "آدرس های ایمیل قابل نمایش در این سازمان مجاز نیستند" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5265,27 +5491,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5305,28 +5531,28 @@ msgstr "حافظه کش Kerberos اشتباه است" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "بار درخواست اشتباه است" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "درخواست وب هوک ناشناخته است" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "موضوع نمی تواند خالی باشد" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "محتوا نمی تواند خالی باشد" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "ورودی JSON قالب درستی ندارد" @@ -5345,7 +5571,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5353,19 +5579,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "امکان مدیریت کردن بار محوری وجود ندارد" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "خطا: پارامتر channels_map_to_topics مقداری غیر از 0 و 1 است" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "پیام از اسلک" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5382,47 +5609,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "باید با کلید صحیح API سرور Zulip اعتبارسنجی شود" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "نوع نشانه نادرست است" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "داده خارج از ترتیب است." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "اطلاعات نادرست است." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP اشتباه است" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/fa/translations.json b/locale/fa/translations.json index f87bf789fa..92065f3006 100644 --- a/locale/fa/translations.json +++ b/locale/fa/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(پنهان)", "(no description)": "(بدون توضیح)", "(no topic)": "(موضوعی وجود ندارد)", + "(or )": "", "(you)": "(شما)", "({message_retention_days} days)": "({message_retention_days} روز)", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "فرستادن", @@ -82,15 +83,18 @@ "Add alert word": "افزودن کلمه هشداردهنده", "Add all users": "", "Add another user...": "اضافه کردن کاربر دیگر... ", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "افزودن ایموجی", "Add emoji reaction": "افزودن واکنش ایموجی", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "افزودن پیونددهنده", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "افزودن جریان پیش فرض جدید", "Add new user group": "", "Add one or more users": "اضافه کردن یک یا چند کاربر", "Add option": "افزودن گزینه", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "افزودن وظیفه", "Add video call": "افزودن تماس تصویری", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "با موفقیت اضافه شد!", "Added successfully.": "", "Administrator": "مدیر", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "همه", "All direct messages": "", + "All groups": "", "All messages": "تمام پیام ها", "All messages including muted streams": "", "All streams": "تمام جریان ها", @@ -136,9 +142,11 @@ "Allow subdomains": "اجازه به زیردامنه ها", "Allowed domains": "دامنه های مجاز", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "همیشه", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "از کلید API می تواند برای دسترسی به حساب کاربری از طریق برنامه نویسی استفاده شود. فردی که به کلید API شما دسترسی دارد می تواند پیام های شما را بخواند، از طرف شما پیام بفرستد و بطور کلی همانند شما در Zulip رفتار کند؛ بنابراین باید از این کلید همانند کلمه عبور محافظت کنید.
پیشنهاد می کنیم ربات بسازید و از حساب کاربری ربات و کلیدهای API برای دسترسی به API های Zulip استفاده کنید، مگر اینکه بخواهید مستقیما به حساب کاربری خود دسترسی داشته باشید.", "An hour ago": "یک ساعت قبل", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "آواتار از روی گراواتار", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "صورتحساب", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "نوع ربات", "Bots": "ربات ها", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "با غیرفعال کردن حساب کاربری خود، بلادرنگ از سامانه خارج می شوید.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "بستن", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "پیام خود را اینجا بنویسید", "Compose your message here...": "پیام خود را اینجا بنویسید... ", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "تغییر شکلک ها قبل از ارسال (:) تبدیل می شود به 😃)", "Cookie Bot": "ربات کوکی", "Copied!": "کپی شد!", + "Copy URL": "", "Copy address": "", "Copy and close": "کپی کردن و بستن", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "سفارشی", + "Custom URL": "", "Custom emoji": "ایموجی سفارشی", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "غیرفعال شد", "Deactivated users": "کاربران غیرفعال", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "جریان های پیش فرض", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "تنظیمات پیش فرض کاربر", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "حذف", "Delete alert word": "حذف کلمه هشداردهنده", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "حذف ذخیره موقت", "Delete file": "حذف فایل", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "حذف لوگو", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "بسته به اندازه سازمان شما، خروجی گرفتن می تواند از چند ثانیه تا یک ساعت طول بکشد. ", "Deprecation notice": "توجه به منسوخ شدن", "Description": "توضیحات", + "Deselect draft": "", "Desktop": "دسکتاپ", "Desktop & mobile apps": "برنامه های موبایل و کامپیوتر", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "پیام خصوصی", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "از کار انداختن", "Discard": "نادیده گرفتن", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "نمایش تنظیمات", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "دامنه", "Don’t allow disposable email addresses": "آدرس های ایمیل قابل نمایش نباشند", "Download": "دانلود", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "ویرایش پیام", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "ویرایش پیش نویس انتخاب شده", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "ویرایش آخرین پیامتان", "Edit your profile": "ویرایش پروفایل شما", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "نوع حساب کاربری خارجی", "External link": "لینک خارجی", "Failed": "با شکست روبرو شد", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "تولید پیش نمایش باخطا روبرو شد", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "فیلتر خروجی ها", "Filter groups": "", "Filter invites": "فیلتر دعوت ها", - "Filter languages": "", "Filter linkifiers": "فیلتر پیوند دهنده ها", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "فیلتر جریان ها", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "اولین پیام", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "عمومی", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "ایجاد لینک دعوت", "Generate new API key": "ایجاد کلید API جدید", @@ -542,14 +569,18 @@ "High contrast mode": "حالت تفاوت رنگ بالا", "Hint": "اشاره", "Hint (up to 80 characters)": "اشاره (تا 80 حرف)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "افراد", "Idle": "بی کار", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "تصویر", "In a meeting": "", "Inactive": "", "Inactive bots": "ربات های غیرفعال", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "وب هوک های ورودی تنها پیام می فرستند.", "Initiate a search": "شروع یک جستجو", "Insert new line": "وارد کردن کاراکتر خط جدید", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "یکپارچه سازی ها", "Interface": "رابط", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "در حال دعوت کردن ...", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "عضویت انجام شد", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "آخرین فعالیت", + "Last edited {last_edit_timestr}": "", "Last message": "آخرین پیام", "Last modified": "آخرین تغییر", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "خروج", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "مدیریت جریان ها", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "نامبرده شده در", "Mentions": "اشاره ها", - "Menu": "منو", "Menus": "منوها", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "موبایل", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "بی صدا کردن جریان", "Mute this user": "", "Mute topic": "بی صدا کردن موضوع", @@ -734,38 +773,42 @@ "New password is too weak": "کلمه عبور جدید بسیار ضعیف است", "New stream announcements": "", "New stream message": "پیام جریانی جدید", + "New stream notifications": "", "New task": "وظیفه جدید", "New topic": "موضوع جدید", "New user announcements": "", + "New user notifications": "", "Next message": "پیام بعدی", "Next unread direct message": "", "Next unread topic": "موضوع خوانده نشده بعدی", - "Next week": "هفته بعد", "No bots match your current filter.": "هیچ رباتی با فیلتر شما یافت نشد.", + "No conversations match your filters.": "", "No custom emoji.": "هیچ ایموجی سفارشی", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "هیچ جریان پیش فرضی با فیلتر شما یافت نشد.", "No description.": "بدون توضیح", + "No drafts selected": "", "No drafts.": "بدون پیش نویس", "No exports.": "بدون خروجی گرفتن ", "No invites match your current filter.": "هیچ دعوتی با فیلتر شما یافت نشد.", "No language set": "", "No linkifiers set.": "پیونددهنده ای تنظیم نشده است.", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "بدون محدودیت", "No scheduled messages.": "", - "No search results": "جستجو نتیجه ای نداشت", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "هیچ کاربری با فیلتر شما یافت نشد.", + "No users to add.": "", "No, I'll catch up.": "نه، من خواهم گرفت. ", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "کلمه عبور قبلی", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "تنها اعضای جریان می توانند کابران را به جریان خصوصی اضافه کنند.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "باز کردن", "Open message menu": "باز کردن منوی پیام", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "برای لیست موضوعات < را فشار دهید ", "Prevent users from changing their avatar": "عدم اجازه تغییر آواتار به کاربران", "Prevent users from changing their email address": "عدم اجازه تغییر آدرس ایمیل به کاربران", @@ -869,6 +915,7 @@ "Previous message": "پیام قبلی", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "پروفایل", @@ -883,6 +930,7 @@ "Reactivate bot": "فعالسازی مجدد ربات", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "بعنوان پيش نويس ذخیره شد", "Saved. Please reload for the change to take effect.": "", "Saving": "در حال ذخیره سازی", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "ببینید چگونه ایمیل را پیکره بندی کنید.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "انتخاب تاریخ و زمان", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "ارسال", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "ارسال ایمیل های خلاصه وقتی که من از برنامه دور هستم", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "نشان دادن پیش نمایش برای تصاویر بارگذاری یا پیوند شده", "Show starred message count": "نمایش تعداد پیام های ستاره دار", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "نمایش/تغییر کلید API شما", "Sign up": "ثبت نام", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "ستاره دار", "Star selected message": "ستاره دار کردن پیام انتخاب شده", @@ -1024,8 +1080,10 @@ "Subscribe": "عضویت", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "عضویت / لغو عضویت در جریان انتخاب شده", + "Subscribe {full_name} to streams": "", "Subscribed": "عضویت انجام شد", "Subscribed streams": "", + "Subscribed successfully!": "عضویت با موفقیت انجام شد!", "Subscriber count": "تعداد اعضا", "Subscribers": "اعضا", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "منطقه زمانی", "Time's up!": "زمان به پایان رسیده است!", "Tip: You can also send \"/poll Some question\"": "نکته: شما می توانید از \"/poll سوال موردنظر\" برای پرسش سوال استفاده کنید", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "امروز", @@ -1112,7 +1170,6 @@ "Toggle subscription": "ایجاد/حذف عضویت", "Toggle the gear menu": "تغییر وضعیت منوی چرخ دنده ای", "Toggle topic mute": "تغییر وضعیت صدای موضوع", - "Tomorrow": "فردا", "Tomorrow at {time}": "", "Topic": "موضوع", "Topic muted": "موضوع بی صدا شد", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "احراز هویت دو مرحله ای", "Type": "نوع", + "URL": "", + "URL for your integration": "", "URL pattern": "الگوی URL", - "URL prefix": "", "URL template": "", "USERS": "کاربران", "Uncheck all": "خارج کردن همه موارد از انتخاب", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "صدادار کردن موضوع", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "خوانده نشده", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "نمایش پیش نویش ها", - "View edit history": "نمایش تاریخچه ویرایش", + "View edit and move history": "", "View file": "نمایش فایل", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "چهارشنبه ", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "شما و", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "شما اکنون در این جریان عضو نیستید.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "شما در این جریان عضو نیستید و کسی نیز هنوز دراین باره صحبت نکرده است!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "شما دریافت می کنید", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "ربات فعالی ندارید.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "هیچ فایلی بارگذاری نکرده اید.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "شما هنوز اشاره نشده اید!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "برای ایجاد یک جریان بدون عضویت، باید یکی از ادمین های سازمان باشید.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "برای ارسال پیام نیاز به اجرای بازتاب Zephyr دارید!", "You searched for:": "جستجوی شما:", "You subscribed to stream ": "", "You type": "شما تایپ می کنید", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "شما عضو این جریان نیستید. اگر دیگران به پیام شما پاسخ دهند اطلاع رسانی نمی شوید.", "Your API key:": "کلید API شما :", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip برای تایید آدرس کاربران و ارسال اطلاع رسانی نیاز به ارسال ایمیل دارد. ", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[پیکره بندی]", - "[Disable]": "[غیرفعال]", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "در 1 ساعت ", - "in 20 minutes": "در 20 دقیقه", - "in 3 hours": "در 3 ساعت", "invisible mode off": "", "leafy green vegetable": "سبزیجات سبز برگ", "marketing": "بازاریابی", "more conversations": "", "more topics": "موضوعات بیشتر", - "or": "یا", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/fi/LC_MESSAGES/django.po b/locale/fi/LC_MESSAGES/django.po index 2acb607cde..84bc7227c0 100644 --- a/locale/fi/LC_MESSAGES/django.po +++ b/locale/fi/LC_MESSAGES/django.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Flammie , 2020,2022\n" "Language-Team: Finnish (http://app.transifex.com/zulip/zulip/language/fi/)\n" @@ -26,46 +26,47 @@ msgstr "" "Language: fi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Ei sallittu vieraille" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Virheellinen organisaatio" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Julkiset kanavat" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Yksityiset kanavat" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Suoraviestit" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Tuntematon kaavion nimi: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Aloitusaika on myöhemmin kuin lopetusaika. Aloitus:{start}, Lopetus: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Analytiikan tietoja ei ole saatavilla. Ota yhteyttä palvelimesi järjestelmänvalvojaan." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Virheelliset parametrit" @@ -126,29 +127,31 @@ msgid "" msgstr "Organisaatiollasi ei ole tarpeeksi käyttämättömiä Zulip-lisenssejä {num_invites} käyttäjän kutsumiseen." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Sinun on laskutettava vähintään {} käyttäjää." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Laskutuksia, joissa on yli {} lisenssiä ei voi käsitellä tämän sivun kautta. Päivittääksesi palvelupakettisi, ota yhteyttä {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Jotain meni pieleen. Lähetä meille sähköpostia osoitteeseen {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Jotain meni pieleen. Lataa sivu uudestaan." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Jotain meni pieleen. Odota hetki ja lataa sivu uudestaan." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -180,7 +183,7 @@ msgstr "Tilausta ei voi päivittää. Tilaus on vanhentunut ja korvattu uudella. msgid "Unable to update the plan. The plan has ended." msgstr "Tilauksen päivitys epäonnistui. Tilaus on päättäynyt." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -196,14 +199,14 @@ msgstr "Tilauksesi löytyy jo lisensseistä {licenses} nykyiseltä laskutusjakso msgid "You cannot decrease the licenses in the current billing period." msgstr "Et voi vähentää lisenssejä nykyiseltä laskutusjaksolta." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "TIlauksesi uudistaminen on jo ajastettu seuraavien lisenssien osalta {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Ei mitään muutettavaa." @@ -215,7 +218,7 @@ msgstr "Tälle organisaatiolle ei ole asiakasta!" msgid "Session not found" msgstr "Istuntoa ei löytynyt" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "On oltava laskutuksen järjestelmänvalvoja tai organisaation omistaja" @@ -265,7 +268,7 @@ msgid "" msgstr "\nJos tämä virhe tuli odottamatta voit\n ottaa yhteyttä tukeen." #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Palvelimen sisäinen virhe" @@ -567,9 +570,9 @@ msgstr "Laskutusstatus" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -587,9 +590,9 @@ msgstr "Katso hinnoittelu" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Isännöi omaa Zulipia" @@ -599,9 +602,9 @@ msgstr "Isännöi omaa Zulipia" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Pyydä sponsorointia" @@ -864,51 +867,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Rekisteröidy käyttäen tarjoajaa %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Vahvista sähköpostiosoitteesi" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Kiitos rekisteröitymisestä!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Ei vieläkään sähköpostia? Voimme lähettää sen uudelleen." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Katso varmuudeksi Roskapostikansioistasi." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Jos tämä viesti ei häviä kokeile uudelleenlatausta." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Yhteyden muodostamineen Zulipiin epäonnistui." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Päivitykset voivat viivästyä." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Yritetään pian uudelleen…" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Yritä nyt." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Viestit" @@ -1156,6 +1159,159 @@ msgstr "Normaalit käyttäjät" msgid "Digest" msgstr "Tiivistelmä" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Tervetuloa Zulipiin." + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Organisaation URL: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Käytä LDAP-tunnustasi kirjautuaksesi sisään" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)sZulipissa: Organisaatiotiedot" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)sZulipissa: Uudet tilitiedot" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Liityttiin Zulip-organisaatioon: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1163,6 +1319,39 @@ msgstr "Tiivistelmä" msgid "Hi," msgstr "Hei," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Jollet pyytänyt tätä muutosta itse, ota pikimmiten yhteyttä %(support_email)s. " + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Jollet pyytänyt tätä muutosta itse, ota pikimmiten yhteyttä <%(support_email)s>. " + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1176,23 +1365,10 @@ msgstr "Saimme pyynnön muuttaa Zulip-tilin sähköpostiosoite osoiteessa %(real msgid "Confirm email change" msgstr "Vahvista sähköpostin vaihto" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Jollet pyytänyt tätä muutosta itse, ota pikimmiten yhteyttä %(support_email)s. " - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Vahvista uusi sähköpostiosoitteesi" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Jollet pyytänyt tätä muutosta itse, ota pikimmiten yhteyttä <%(support_email)s>. " +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1246,17 +1422,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1361,225 +1526,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Sähköpostiosoitteellasi %(email)s on tilejä seuraavissa Zulip-organisaatioissa, joita isännöi %(external_host)s: " -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Tervetuloa Zulipiin." - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Organisaation URL: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Käytä LDAP-tunnustasi kirjautuaksesi sisään" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)sZulipissa: Organisaatiotiedot" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)sZulipissa: Uudet tilitiedot" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Liityttiin Zulip-organisaatioon: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Esimerkkejä lyhyistä aiheista" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Siirry Zulipiin" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1664,14 +1610,14 @@ msgstr "Tämä kutsu vanhenee kahdessa päivässä. Jos kutsu vanhenee, sinun t #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1703,21 +1649,45 @@ msgid "" msgstr "Saat tämän viestin koska @%(mentioned_user_group_name)s mainittiin" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Sait tämän koska kaikki käyttäjät mainittiin huoneessa #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Sait tämän viestin koska sähköpostimuistutkset on päällä ryhmälle #%(stream_name)s" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1725,21 +1695,21 @@ msgid "" "preferences." msgstr "Vastaa tähän sähköpostiin suoraan katso sitä %(realm_name)s Zulipissa, tai muokkaa sähköpostiasetuksia. " -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Katso tätä viestiä %(realm_name)sZulipissa , tai muokkaa sähköpostiasetuksia." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Vastaa %(realm_name)s Zulipissa tai muokkaa sähköpostiasetuksia." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1782,29 +1752,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nTämä sähköposti ei sisällä viestin sisältöä, koska olet estänyt viestien sisällön näyttämisen sähköposti-ilmoituksissa.\nLisätietoja %(alert_notif_url)s \n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Vastaa viestiin suoraan tai katsele sitä %(realm_name)s Zulipissa:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Katso tai vasta a%(realm_name)sZulipissa:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Vastaa %(realm_name)s Zulipissa" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nÄlä vastaa tähän sähköpostiin. Tätä Zulip-palvelinta ei ole määritetty vastaanottamaan sähköpostia. Auta:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Muokkaa sähköpostiasetuksia:" @@ -1967,6 +1937,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1995,6 +1973,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Esimerkkejä lyhyistä aiheista" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Siirry Zulipiin" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2383,7 +2433,7 @@ msgid "Incoming webhooks" msgstr "Saapuvat webhookit" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interaktiiviset botit" @@ -2883,292 +2933,295 @@ msgid "" " " msgstr "\nVoit myös käyttää Zulipin työpöytäsovellusta." -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "ilmoittautumiset" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} liittyi juuri Zulipiin. (yhteensä: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} hyväksyi kutsusi liittyä Zulipiin!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Virheellinen order mapping." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Kenttä id {id} ei löydy." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Virheellinen oletuskanavan ryhmän nimi '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Oletuskanavan ryhmän nimi on liian pitkä (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Oletuskanavan ryhmän nimi '{}' sisältää NULL (0x00) merkkejä." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Virheellinen oletuskanavan ryhmä {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' on oletuskanava ja sitä ei voi lisätä '{group_name}' ryhmään" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Oletuskanavan ryhmä '{group_name}' on jo olemassa" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Kanava '{stream_name}' on jo oletuskanavan ryhmässä '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "'{stream_name}' kanava ei ole oletuskanavan ryhmässä '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Tämä oletuskanavan ryhmä on jo nimetty '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Oletuskanavan ryhmä '{}' on jo olemassa" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Käyttäjien suojaamiseksi Zulip rajoittaa yhdessä päivässä lähetettävien kutsujen määrää. Koska olet saavuttanut rajan, kutsuja ei lähetetty. " -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Tilisi on liian uusi jotta voisit lähettää kutsuja tähän organisaatioon. Kysy organisaation järjestelmänvalvojalta tai kokeneemmalta käyttäjältä." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Joitain sähköposteja ei saatu vahvistettua, joten yhtään kutsua ei lähetetty." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Emme kyenneet kutsumaan ketään." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Jotkut osoitteista käyttää jo Zulipia, joten heille ei lähetetty kutsua. Muille kutsut lähetettiin!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Ei mitään muutettavaa" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Virheellinen propagate_mode ilman aiheen muokkausta" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Ei voida muokata viestisisältöä samalla kun muutetaan kanavaa" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Widgettiä ei voi editoida." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} on merkinnyt tämän aiheen ratkaistuksi." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} on merkinnyt tämän aiheen ratkaisemattomaksi." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Tämä aihe on siirretty paikkaan {new_location} käyttäjän {user} toimesta." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Viesti tästä aiheesta on siirretty paikkaan {new_location} käyttäjän {user} toimesta." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} viestiä tästä aiheesta on siirretty paikkaan {new_location} käyttäjän {user} toimesta." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Tämä aihe on siirretty paikasta {old_location} käyttäjän {user} toimesta." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} viestiä on siirretty tänne paikasta {old_location} käyttäjän {user} toimesta." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Organisaatiosi on ottanut viestien muokkauksen pois päältä" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Sinulla ei ole oikeuksia muokata tätä viestiä" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Tämän viestin muokkaamisen aikaraja on ohitettu" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Sinulla ei ole oikeuksia käyttää jokerimainintoja tällä kanavalla." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Sinulla ei ole oikeuksia siirtää tätä viestiä" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Sinulle ei ole oikeuksia siirtää viestiä, koska sinulla ei ole pääsyä viestin kanavalle" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Virheellinen lippu: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Lippu ei muokattavissa: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Virheellinen viestin lippuoperaatio: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Virheellinen viesti(t)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Viestiä ei kyetä esittämään" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Odotettiin täsmälleen yhtä kanavaa" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Virheellinen tietotyyppi kanavalle" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Virheellinen tieto vastaanottajille" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Vastaanottajalista voi sisältää sähköpostiosoitteita tai käyttäjätunnuksia, mutta ei molempia." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Bottisi {bot_identity} yritti lähettää viestiä kanvatunnukselle {stream_id}, mutta kanavaa ei ole olemassa." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Bottisi {bot_identity} yritti lähettää viestiä kanavalle {stream_name}, mutta tätä kanavaa ei ole olemassa. Luo se napsauttamalla [tästä]({new_stream_link})." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Bottisi {bot_identity} yritti lähettää viestiä kanavalle {stream_name}. Kanava on olemassa mutta sillä ei ole yhtään tilaajaa." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Suoraviestit on poistettu käytöstä tässä organisaatiossa" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Aiheet ovat pakollisia tässä organisaatiossa" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgetit: API-ohjelmoija lähetti virheellisen JSON-sisällön" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgetit: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reaktio on jo olemassa." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Samanniminen mukautettu emoji on jo olemassa." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3182,8 +3235,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3202,18 +3255,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} muutti tämän kanavan [käyttöoikeudet](/help/stream-permissions) arvosta **{old_policy}** arvoon **{new_policy}**. " -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3222,38 +3289,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} muutti tämän kanavan [lähetysoikeudet](/help/stream-sending-policy):\n\n* **Vanhat käyttöoikeudet**: {old_policy}. \n* **Uudet käyttöoikeudet**: {new_policy}. \n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "Käyttäjä: {user_name} muutti kanavan: {old_stream_name} nimeksi: {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Ei kuvausta." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} muutti tämän kanavan kuvausta." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Vanha kuvaus" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Uusi kuvaus" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Ikuisesti" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Tämän kanavan viestit säilytetään nyt ikuisesti." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3263,56 +3330,59 @@ msgid "" "{summary_line}" msgstr "{user} on muuttanut tämän kanavan [viestin säilytysjaksoa](/help/message-retention-policy):\n* **Vanha säilytysjakso**: {old_retention_period} \n* **Uusi säilytysjakso**: {new_retention_period} \n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Et voi liittää tähän viestiin alaviestiä." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Virheellinen käyttäjätunnus {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Käyttäjäryhmä '{}' on jo olemassa." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Tämä API ei ole käytettävissä sisään tuleville webhook-boteille." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Tiliä ei ole liitetty aliverkkotunnukseen" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Tämä päätepiste ei hyväksy bottipyyntöjä." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "On oltava järjestelmänvalvoja" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Riittämättömät oikeudet" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Tämä päätepiste vaatii HTTP basic authenticationin." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Virheellinen valtuutusotsikko basic auth:lle" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Puuttuva Basic-valtuutusotsikko" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook-botit voivat päästä vain webhookeihin" @@ -3327,95 +3397,101 @@ msgstr "Tilisi {username} on poistettu käytöstä. Ota yhteyttä organisaatiosi msgid "The password is too weak." msgstr "Salasana on liian heikko." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Aliverkkotunnuksen pitää olla pituudeltaan 3 tai suurempi." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Aliverkkotunnus ei voi alkaa taikka loppua '-' merkkiin." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Aliverkkotunnus voi sisältää vain pieniä kirjaimia, numeroita, ja '-' merkkejä." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Aliverkkotunnus ei ole käytettävissä. Valitse toinen." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Käytä oikeaa sähköpostiosoitettasi." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Organisaatio johon yrität liittyä käyttäen {email} osoitetta ei ole olemassa." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Pyydä organisaation järjestelmänvalvojalta kutsu {email} osoitteelle. " -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Sähköpostiosoitteesi {email} ei ole verkkotunnuksesta joista on sallittu rekisteröityminen tähän organisaatioon." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Sähköpostiosoitteessa ei saa olla + -merkkiä tässä organisaatiossa." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Uudet jäsenet eivät voi liittyä tähän organisaatioon, koska kaikki Zulip-lisenssit ovat käytössä. Ota yhteyttä kutsujaan ja pyydä häntä lisäämään lisenssien määrää ja yritä sitten uudelleen. " -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Uusi salasana" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Uuden salasanan vahvistaminen" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Yrität kirjautua sisään liian monta kertaa. Yritä uudelleen {} sekunnin kuluttua tai ota yhteyttä organisaatiosi järjestelmänvalvojaan saadaksesi apua. " +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Salasanasi on poistettu käytöstä, koska se on liian heikko. Nollaa salasanasi luodaksesi uusi. " -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Valtuus" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Lisää korkeintaan 10 sähköpostia." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Zulip-organisaatiota ei löytynyt. " #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Virheellinen sähköposti '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3479,31 +3555,31 @@ msgstr "Aliverkkotunnukset eivät voi alkaa tai loppua '-' merkkiin." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Verkkotunnukset voivat sisältää vain kirjaimia, numeroita, '.' ja '-' merkkejä." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Timestamp ei saa olla negatiivinen." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Aihe ei saa sisältää tyhjiä tavuja" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Määriteltävä täsmälleen 1 kanavatunnus kanavan viesteille" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Käyttäjä on poistanut käytöstä luonnosten synkronoinnin." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Luonnosta ei löydy" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Avaa Zulip nähdäksesi spoilerin sisällön" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulipin ilmoitukset" @@ -3536,166 +3612,166 @@ msgstr "Omistaa jo tilin." msgid "Account has been deactivated." msgstr "Tämä tili on poistettu käytöstä." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Emojia '{}' ei ole olemassa" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Virheellinen mukautettu emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Virheellinen mukautetun emojin nimi." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Tämä mukautettu emoji on poistettu käytöstä." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Virheellinen emojin koodi." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Virheellinen emojin nimi." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Virheellinen emojin tyyppi." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "On oltava organisaation järjestelmänvalvoja tai emojin tekijä" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emojin nimi puuttuu" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Tapahtumajonoa ei pystytty allokoimaan" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Ei kirjautuneena: API-todennus tai käyttäjäistunto vaditaan" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "'{stream}' kanava ei ole olemassa" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Kanavaa tunnuksella '{stream_id}' ei ole olemassa" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Organisaation omistaja" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "käyttäjä" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Ei voida poistaa käytöstä viimeistä {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Virheellinen Markdown include-lause: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "APIn käyttö ylitti raja-arvon" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Virheellisesti muotoiltu JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "On oltava organisaation jäsen" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "On oltava organisaation järjestelmänvalvoja" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "On oltava organisaation omistaja" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Käyttäjätunnuksesi tai salasanasi on väärin" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Tili on poistettu käytöstä" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Tämä organisaatio on poistettu käytöstä" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Palvelimesi mobiili push-ilmoituspalvelun rekisteröinti on poistettu käytöstä " -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Salasanatodennus on poistettu käytöstä tässä organisaatiossa" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Salasanasi on poistettu käytöstä ja tulee asettaa uudelleen" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Virheellinen API-avain" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Virheellisesti muodostettu API avain." -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Tapahtuma '{event_type}' ei ole tuettu webhookille {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Pyyntöä ei voi jäsentää: loiko {webhook_name} tämän tapahtuman? " -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Virheellinen aliverkkotunnus" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Pääsy estetty" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3703,6 +3779,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reaktio on jo olemassa." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reaktiota ei ole olemassa." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitterkäyttäjänimi" @@ -3744,8 +3828,8 @@ msgid "Settings" msgstr "Asetukset" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Määritä ilmoituksesi ja näyttöasetuksesi siirtymällä kohtaan Asetukset." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3757,264 +3841,272 @@ msgid "" "and give it a go!" msgstr "Aloita uusi keskustelu napsauttamalla tätä. Valitse aihe (mieluiten kaksi-kolme sanaa) ja kokeile!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integraatio frameworkit" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Jatkuva integraatio" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Asiakastuki" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Käyttöönotto" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Viihde" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Kommunikaatio" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Talous" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Ihmisresurssit" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Markkinointi" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Sekalaiset" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Monitorointi" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Projektinhallinta" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Tuottavuus" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Versionhallinta" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Viesti ei saa olla tyhjä" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Viesti ei saa sisältää tyhjiä tavuja" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Hakuehto {} ei ole tuettu." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Virheellinen hakuehto: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Puuttuva 'anchor' argumentti." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Virheellinen linkki" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Jos olet uusi Zulip-käyttäjä, tutustu [aloitusoppaaseemme]({getting_started_url})! " -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Tervetuloa Zulipiin!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Voin myös auttaa asennuksessa! Napsauta mitä tahansa tämän viestin kohtaa tai paina r vastataksesi. " -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Tässä on muutamia viestejä, jotka ymmärrän:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Siirry kohtaan [Profiiliasetukset](#settings/profile), lisää [profiilikuva](/help/change-your-profile-picture) ja muokkaa [profiilitietojasi](/help/edit-your-file). " -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Siirry kohtaan [Näyttöasetukset](#settings/display-settings) [vaihtaaksesi vaalean ja tumman teeman välillä](/help/dark-theme), [valitse suosikkiemoji-teemasi](/help/emoji-and-emoticons#change-your-emoji-set), [vaihda kieli](/help/change-your-language) ja tee muita parannuksia Zulip-kokemukseesi." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Zulipissa kanavat [määrittävät kuka saa viestin](/help/streams-and-topics)." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Selaa ja tilaa kanavia](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "Zulipissa aiheet [kertovat mistä viestissä on kyse](/help/streams-and-topics). Ne ovat kuten sähköpostin aiherivi." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Zulipin [pikanäppäimet](#keyboard-shortcuts) mahdollistavat sovelluksen nopean ja tehokkaan navigoinnin. " -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Paina `?` milloin tahansa nähdäksesi [lunttilapun](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip käyttää [Markdown](/help/format-your-message-using-markdown), intuitiivista muotoa **lihavoitukselle**, *kursivoitukselle*, luettelomerkityille luetteloille ja muille. Napsauta [tätä](#message-formatting) saadaksesi lunttilapun. " -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Tutustu [viestivinkkeihimme] (/help/messaging-tips) saadaksesi lisätietoja emojireaktioista, koodilohkoista ja paljon muusta! " -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Tutustu [aloitusoppaaseemme](/help/getting-started-with-zulip) tai selaa [Tukikeskusta](/help/) saadaksesi lisätietoja! " -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Anteeksi, en ymmärtänyt viestiäsi. Kokeile jotakin seuraavista komennoista: " -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Tämä on yksityinen kanava, kuten streamin nimen vieressä oleva lukkokuvake osoittaa. " -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Yksityiset kanavat ovat näkyvissä vain kanavan jäsenille." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Hallitaksesi kanavaa, siirry [Kanavan asetukset]({stream_settings_url}) ja napsauttamalla `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Tämä on viesti kanavalla #**{default_notification_stream_name}** aiheella `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Aiheet ovat kevyt työkalu keskustelujen pitämiseen järjestyksessä. " -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Voit lukea lisää aiheista paikasta [Kanavat ja aiheet]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Tämä on viesti kanavalla #**{default_notification_stream_name}** aiheenaan `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4029,669 +4121,758 @@ msgstr "Virheellinen JSON vastauksessa" msgid "Invalid response format" msgstr "Virheellinen vastaussanoman muoto" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr " VIrheelliset GCM-vaihtoehdot ohjaajalle: prioriteetti {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Virheelliset GCM-vaihtoehdot ohjaajalle: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token ei ole olemassa" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Tämä organisaatio on poistanut mahdollisuuden viestisisällön sisällyttämisestä mobiili push-ilmoituksiin " -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} maintisi @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} mainitsi sinut:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} mainitisi kaikki:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Käyttäjällä ei ole valtuutusta tähän kyselyyn" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' ei enää käytä Zulipia." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push-ilmoitusten ohjaajan vika: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Ei voida päätellä argumenttien '{var_name1}' ja '{var_name2}' välillä " -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Puuttuva '{var_name}' argumentti" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Sopimaton arvo '{bad_value}' muuttujalle: {var_name}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Virheellisen muotoinen tietosisältö" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "\"{}\" argumentti ei ole kelvollista JSONia." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip-tilin tietoturva" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Vain organisaation järjestelmänvalvojat voivat lähettää viestejä tälle kanavalle." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Vain organisaation järjestelmänvalvojat ja moderaattorit voivat lähettää viestejä tälle kanavalle." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Vieraat eivät voi lähettää viestiä tälle kanavalle" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Uuden jäsenet eivät voi lähettää tälle kanavalle." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Ei lupaa lähettää kanavalle '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Anna 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Valitse yksi: 'stream' tai 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Viallinen kanava-ID" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Kanavan nimi '{}' on jo käytössä." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Virheellinen kanavan nimi '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Kanava(t) ({}) ei ole olemassa" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Web-julkiset kanavat eivät ole käytössä." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Oletuskanavan ryhmätunnus '{}' ei ole olemassa." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Kanavan nimi ei voi olla tyhjä!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Kanavan nimi on liian pitkä (rajoitus: {} merkkiä)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Virheellinen merkki kanavan nimessä kohdassa {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Aihe ei voi olla tyhjä!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Virheellinen merkki aiheen nimessä kohdassa {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Tilaajatietoja ei ole saatavilla tälle kanavalle" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Yksityisen kanavan tilaajien haku epäonnistui" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} ei ole totuusarvo" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} ei ole päivämäärä" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} ei ole sanakirja" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} ei ole liukuluku" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} on liian lyhyt" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} ei ole kokonaisluku" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} on liian pitkä" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} ei ole lista-tyyppinen" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Virheellinen {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} on liian pitkä (rajoitus: {max_length} merkkiä)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} ei ole merkkijono" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Lähetys ylittäisi organisaatiosi lähetyskiintiön." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Kuvaa ei pystytty purkamaan; latasitko kuvatiedoston?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Kuvan koko ylittää rajan." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Vioittunut animoitu kuva." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Tuntematon aminoidun kuvan muoto." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Virheellinen käyttäjäryhmä" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nimi on liian pitkä!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nimi on liian lyhyt!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Virheellinen merkki nimessä!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Virheellinen muoto!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Nimi on jo käytössä!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Sopimaton nimi tai käyttäjätunnus" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Virheellinen integraatio '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Konfiguraatioparametrit puuttuvat: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Virheellinen {} arvo {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Virheellinen konfiguraatiotieto!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Virheellinen bottityyppi" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Virheellinen käyttöliittymätyyppi" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "VIrheellinen käyttäjätunnus: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Ei kyseistä bottia" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Ei kyseistä käyttäjää" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Käyttäjä on poistettu käytöstä" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} ei ole merkkijono" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} ei voi olla tyhjä." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Virheellinen {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} on liian pitkä (rajoitus: {max_length} merkkiä)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} on liian vähän merkkejä {length}; pitäisi olla {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} ei ole aikavyöhyke" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} ei ole päivämäärä" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} ei ole kokonaisluku" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} on liian lyhyt" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} on liian pitkä" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} ei ole liukuluku" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} ei ole totuusarvo" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} ei ole oikeanmuotoinen hexa-värikoodi" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} ei ole lista-tyyppinen" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} pitäisi sisältää tarkalleen {length} alkiota" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} ei ole sanakirja" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} ei sisällä {var_name} avainta" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Odottamaton argumentti: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} ei ole allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} on väärin)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} ei ole URL-osoite" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "URL-kuvion pitää sisältää %(username)s" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' ei voi olla tyhjä." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Kentällä ei voi olla samaa valintaa monesti." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' ei ole kelvollinen vaihtoehto kentälle '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} ei ole merkkijono tai kokonaislukulista" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} ei ole merkkijono tai kokonaisluku" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} ei ole pituutta" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} puuttuu" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "HTTP-tapahtuman otsikko puuttuu '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "{} webhook olettaa aikaleman olevan millisekunteja." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Zcommand tulisi aloittaa kauttaviivalla." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Komentoa {} ei ole olemassa" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF virhe: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "kanavan tapahtumia" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Saatavilla Zulip Standardilla. Päivitä käyttääksesi." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Virheellinen merkki emojin nimessä" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Huono säännöllinen lauseke: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Tuntematon säännöllisen lauseen virhe" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Pygments-kielessä on virheellisiä merkkejä " -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Järjestelmänvalvojat, moderaattorit ja vieraat" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Järjestelmänvalvojat, moderaattorit ja jäsenet" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Järjestelmänvalvojat ja moderaattorit" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Vain järjestelmänvalvojat" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Ei kukaan" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Organisaation omistaja" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Organisaation järjestelmänvalvoja" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderaattori" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Jäsen" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Vieras" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Julkinen verkko" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Julkinen" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Yksityinen, jaettu historia" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Yksityinen, suojattu historia" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Julkinen, suojattu historia" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Kaikki jäsenet voivat lähettää viestejä" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Ainoastaan organisaation järjestelmänvalvojat voivat lähetää viestejä" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Vain organisaation järjestelmänvalvojat ja moderaattorit voivat lähettää viestejä" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Vain organisaation täysivaltaiset jäsenet voivat lähettää viestejä" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode-emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Mukautetut emojit" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulipin ekstraemoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Käyttäjä tunnuksella {} on poistettu käytöstä" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Käyttäjä tunnuksella {} on botti" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista vaihtoehdoista" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Henkilövalitsin" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Lyhyt teksti" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Pitkä teksti" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Päivämäärän valitsin" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Linkki" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Ulkoinen tili" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronominit" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Tuntematon IP osoite" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "tuntematon käyttöjärjestelmä" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Tuntematon selain" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Puuttuva 'queue_id' argumentti" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Puuttuva 'last_event_id' argumentti" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "{event_id} uudempi tapahtuma on jo leikattu!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Tapahtuma {event_id} ei ollut tässä jonossa" @@ -4759,89 +4940,123 @@ msgstr "Samanniminen kenttä on jo olemassa. " msgid "Default custom field cannot be updated." msgstr "Oletusarvoista mukautettua kenttää ei voi päivittää." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Endpoint ei ole käytettävissä tuotannossa." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend ei ole käytössä." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Tuntematon hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Sinun täytyy määritellä ainakin yksi sähköpostiosoite." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Kanavaa ei löydy tunnuksella: {}. Kutsuja ei lähetetty." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Ei kyseistä kutsua" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "Viallinen kanava-ID {}. Kutsuja ei lähetetty." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Viestin muokkaushistoria on poistettu käytöstä tässä organisaatiossa" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Sinulla ei ole oikeuksia poistaa tätä viestiä " -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Tämän viestin poistamisen aikaraja on umpeutunut" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Viesti on jo poistettu" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Liikaa viestejä pyydetty (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "'{}' aihetta ei löydy" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Puuttuva lähettäjä" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Peilaus ei ole sallittu vastaanottajan käyttäjätunnukselle" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Virheellinen toistettu viesti" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr-peilaus ei ole sallittua tässä organisaatiossa" @@ -4857,27 +5072,28 @@ msgstr "Käyttäjä on jo mykistetty" msgid "User is not muted" msgstr "Käyttäjä ei ole mykistetty" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Läsnäolo ei ole tuettu boteille." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Ei läsnäolotietoja käyttäjälle {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Asiakasohjelma ei antanut uusia arvoja." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Asiakkaan on välitettävä emoji_name, jos hän välittää joko emoji_code:n tai reaction_type:n." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Virheellinen tila: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4893,37 +5109,37 @@ msgid "" "emoji_code" msgstr "Vähintään yksi argumentti seuraavista on oltava: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reaktiota ei ole olemassa." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Vastaanottoilmoitukset on poistettu käytössä tässä organisaatiossa" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Virheellinen kieli '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Vähintään yksi todennusmenetelmä on oltava käytössä." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Virheellinen video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Virheellinen giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "On oltava demo-organisaatio." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Virheellinen verkkotunnus: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4935,42 +5151,43 @@ msgstr "Verkkotunnus {domain} on jo osa organisaatiotasi." msgid "No entry found for domain {domain}." msgstr "Verkkotunnukselle {domain} ei löytynyt merkintää. " -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Sinun täytyy lähettää ainoastaan yksi tiedosto." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Ladattu tiedosto on suurempi kuin sallittu {} MB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Raja-arvo ylitetty." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Pyydä manuaalinen tiedonpoiminta osoitteesta {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Virheellinen tiedonpoimintatunnus" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Poimintatiedot on jo poistettu" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4978,7 +5195,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Sinun täytyy lähettää ainoastaan yksi kuvake." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkiyttäjää ei löytynyt" @@ -4986,107 +5203,100 @@ msgstr "Linkiyttäjää ei löytynyt" msgid "You must upload exactly one logo." msgstr "Voit ladata yhden logon." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Virheellinen leikkikenttä" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Käyttäjä ei ole valtuutettu suorittamaan kyselyjä '{principal}':n puolesta" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Yksityisiä kanavia ei voi asettaa oletukseksi." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Sinun täytyy välittää joko \"new_description\" tai \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Virheellinen \"op\" arvo. Määritä joko \"add\" tai \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Oletuskanavia ei voi asettaa yksityisiksi." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Kanavalla on jo kyseinen nimi!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Ei mitään tehtävää. Määritä vähintään joko \"add\" tai \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} lisäsi sinut tilaajaksi kanavalle {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} lisäsi sinut tilaajaksi kanaville:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Kanavalle ({stream_name}) pääsy ei onnistu." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Voit kutsua ainoastaan toisia Zephyr-peilauksen käyttäjiä yksityisille kanaville." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} loi seuraavat kanavat: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} loi uuden kanavan: {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "uudet kanavat" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** kanava, jonka on luonut {user_name}. **Kuvaus:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Tuntematon tilauksen ominaisuus: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Kanavatunnus {} ei ole tilattuna" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Virheellinen json aliviestille" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Et ole valtuutettu katsomaan tätä tiedostoa.

" @@ -5102,97 +5312,108 @@ msgstr "Käyttäjä on ottanut pois käytöstä ilmoitukset kanavaviestien kirjo msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Tiedostoa ei löydy.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Virheellinen token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Virheellinen tiedostonimi" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Sinun pitää määritellä lähetettävä tiedosto" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Voit lähettää ainoastaan yhden tiedoston kerrallaan" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Uutta tietoa ei ole toimitettu" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Käyttäjä {user_id} on jo tämän ryhmän jäsen" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Tässä käyttäjäryhmässä ei ole jäsentä '{}'" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Käyttäjäryhmä {group_id} on jo tämän ryhmän aliryhmä." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Käyttäjäryhmä {group_id} ei ole tämän ryhmän aliryhmä" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Avatarin muutokset on estetty tässä organisaatiossa." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Sähköpostinosoitteen muuttaminen on poistettu käytöstä tässä organisaatiossa." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Virheellinen default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Virheellinen ilmoituksen merkkiääni '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Virheellinen sähköpostin eräjakso: {} sekuntia" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Zulip-salasanaasi hallitaan LDAP:ssa" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Väärä salasana!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Yritit liian monta kertaa! Yritä uudelleen {} sekunnin kuluttua." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Uusi salasana on liian heikko!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Sinun täytyy lähettää ainoastaan yksi avatar." @@ -5239,6 +5460,10 @@ msgstr "Virheellinen sulautetun botin nimi." msgid "Username already in use" msgstr "Käyttäjätunnus on jo käytössä" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5249,8 +5474,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Kertakäyttöiset sähköpostiosoitteet eivät ole sallittuja tässä organisaatiossa" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Sähköposti '{}' on jo käytössä" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5268,27 +5494,27 @@ msgstr "Virheellinen Zoom-istunnon tunniste" msgid "Invalid Zoom credentials" msgstr "Virheelliset Zoom-tunnukset" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Zoom-puhelun aloittaminen epäonnistui" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton ei ole määritetty." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Virheellinen allekirjoitus." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Virhe yhteyden muodostamisessa Big Blue Button -palvelimeen. " -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Big Blue Button -palvelimen todennusvirhe." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Big Blue Button-palvelin palautti tuntemattoman virheen." @@ -5308,28 +5534,28 @@ msgstr "Virheellinen Kerberos-välimuisti" msgid "We were unable to set up mirroring for you" msgstr "Emme pystyneet pystyttämään toisintoa sinulle" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Virheellinen tietosisältö" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Tuntematon webhook pyyntö" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Aihe ei voi olla tyhjä" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Sisältö ei voi olla tyhjä" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Virheellinen JSON syöte" @@ -5348,7 +5574,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Newrelic-webhook pitää olla tilassa [createdacvticadertknogledegdiaclosed]" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5356,19 +5582,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Kykenemätön käsittelemään Pivotal-tietoja" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Virhe: channels_map_to_topics parametri on muuta kuin 0 tai 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Viesti Slackistä" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Tuntematon WordPress-webhooktoiminto: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5385,47 +5612,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Täytyy vahvistaa oikealla Zulip-palvelimen API-avaimella" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Virheellinen UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Virheellinen token-tyyppi" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} ei ole oikea isäntänimi" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "user_id tai user_uuid puuttuu" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Virheellinen ominaisuus {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Tiedot ovat epäkunnossa." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Virheellinen tieto." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Salasanasi on vaihdettava." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "id_token parametri puuttuu" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Virheellinen OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Ei voi käyttää yhtäaikaisesti mobile_flow_otp ja desktop_flow_otp." diff --git a/locale/fi/translations.json b/locale/fi/translations.json index 0dc1572f7f..948c2c936c 100644 --- a/locale/fi/translations.json +++ b/locale/fi/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(piilotettu)", "(no description)": "(ei kuvausta)", "(no topic)": "(ei aihetta)", + "(or )": "", "(you)": "(sinä)", "({message_retention_days} days)": "({message_retention_days} päivää)", "/dark (Switch to the dark theme)": "/dark (Vaihda tummaan teemaan)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} ei ole tilannut tätä kanavaa. Hän ei saa ilmoitusta ellet tilaa kanavaa hänelle.", "{username} has {number_of_invites_by_user} unexpired invitations.": "käyttäjällä {username} on {number_of_invites_by_user} kutsuja jotka eivät ole vielä vanhenneeet.", "Subscribe": "Tilaa", - "Click here to learn about exporting private streams and messages.": "Napsauta tästä saadaksesi lisätietoja yksityisten kanavien ja viestien tiedonpoiminnasta.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Päivitä lisätilan saamiseksi.", " to add a new line": " lisää uusi rivi", " to send": " lähetä viesti", @@ -82,15 +83,18 @@ "Add alert word": "Lisää hälytyssana", "Add all users": "Lisää kaikki käyttäjät", "Add another user...": "Lisää toinen käyttäjä...", + "Add audio call": "", "Add code playground": "Lisää koodin leikkikenttä", + "Add default streams": "", + "Add email": "", "Add emoji": "Lisää emoji", "Add emoji reaction": "Lisää emoji reaktio", "Add extra emoji for members of the {realm_name} organization.": "Lisää ekstra emoji {realm_name} organisaation jäsenille.\n ", "Add global time": "Lisää globaali aika", "Add linkifier": "Lisää linkkiytin", "Add members": "Lisää jäseniä", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Lisää jäsen...", - "Add new default stream": "Lisää uusi oletuskanava", "Add new user group": "Lisää uusi käyttäjäryhmä", "Add one or more users": "Lisää yksi tai useampi käyttäjä", "Add option": "Lisää vaihtoehto", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Lisää tilaajia. Käytä käyttäjäryhmää tai #kanavanimeä lisätäksesi tilaajia massana.", "Add task": "Lisää tehtävä", "Add video call": "Lisää videopuhelu", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Lisätty onnistuneesti!", "Added successfully.": "Lisätty", "Administrator": "Järjestelmänvalvoja", @@ -124,6 +129,7 @@ "Alerted messages": "Varoitusviestejä", "All": "Kaikki", "All direct messages": "Kaikki suoraviestit", + "All groups": "", "All messages": "Kaikki viestit", "All messages including muted streams": "Kaikki viestit mukaanlukien vaiennetut kanavat", "All streams": "Kaikki kanavat", @@ -136,9 +142,11 @@ "Allow subdomains": "Salli aliverkkotunnukset", "Allowed domains": "Sallitut verkkotunnukset", "Allowed domains: {domains}": "Sallitut verkkotunnukset: {domains}", + "Already members:": "", "Already not subscribed.": "Entuudestaan ilman tilausta.", "Already subscribed to {stream}": "{stream} entuudestaan tilattu", "Already subscribed users:": "Kanavan jo tilanneet käyttäjät:", + "Already subscribed.": "", "Always": "Aina", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API-avaimella voidaan käyttää Zulip tiliä ohjelmallisesti. Kaikkilla joilla on pääsy API-avaimeesi on mahdollisuus lukea viestisi, lähettää viestejä puolestasi, ja esiintyä sinuna Zulipissa, joten vartio API-avaintasi huolellisesti aivan kuten vartioit salasanaasi.
Suosittelemme bottien luomista ja käyttämään bottien tilejä ja API-avaimia käyttäessä Zulipin APIa, ellei tehtävä vaadi pääsyä tilillesi.", "An hour ago": "tunti sitten", @@ -150,6 +158,7 @@ "Archive ?": "Arkistoi ?", "Archive stream": "Arkistoi kanava", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Kanavan arkistointi poistaa kaikkien tilaukset. Tätä ei voi perua.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "Jatketaanko?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Oletko varma, että haluat luoda kanavan ''''{stream_name}'''' ja asettaa {count} käyttäjää tilaajaksi siihen?", "Are you sure you want to deactivate this organization?": "Oletko varma, että haluat poistaa tämän organisaation käytöstä?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Oletko varma, että haluat lähettää uudelleen kutsun henkilölle ?", "Are you sure you want to revoke the invitation to {email}?": "Oletko varma, että haluat perua kutsun henkilöltä {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Oletko varma, että haluat perua tämän kutsun, jonka on luonut {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Lähetätäänkö @-maininnat {subscriber_count} käyttäjälle jotka ovat tilanneet kanavan #{stream_name}? Jos ei, muokkaa viestistäsi pois @{wildcard_mention}.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Oletko varma, että haluat poistaa tähden kaikista viesteistä paikassa ? Tätä toimintoa ei voi perua.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Oletko varma, että haluat poistaa tähdet kaikista tähdellä merkityistä viesteistä? Tätä toimintoa ei voi perua.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Avatarin muutokset on estetty tässä organisaatiossa", "Avatar from Gravatar": "Avatar Gravatarista", "Back to streams": "Takaisin kanaviin", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Koska olet tämän organisaation ainoa omistaja, et voi deaktivoida tiliäsi.", "Because you are the only subscriber, this stream will be automatically archived.": "Koska olet ainoa tilaaja, tämä kanava arkistoidaan automaattisesti.", "Billing": "Laskutus", @@ -190,8 +201,11 @@ "Bot owner": "Botin omistaja", "Bot type": "Botin tyyppi", "Bots": "Botit", + "Browse 1 more stream": "", "Browse recent conversations": "Selaa hiljattaisia keskusteluja", "Browse streams": "Selaa kanavia", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Yritykset", "Busy": "Varattu", "By deactivating your account, you will be logged out immediately.": "Poistamalla tilisi käytöstä, sinut kirjataan ulos välittömästi.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Napsauta tästä nähdäksesi.", "Click on the pencil () icon to edit and reschedule a message.": "Klikkaa kynää () muokataksessi ja uudeleeenajastaaksesi viesti.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Tallenna napsauttamalla syöttöruudun ulkopuolella. Lähetämme ilmoituksen automaattisesti kaikille jotka on lisätty tai poistettu.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Katso tai lataa napsauttamalla.", "Close": "Sulje", "Close modal": "Sulje näkymä", @@ -232,7 +248,7 @@ "Commuting": "Matkustamassa", "Compact": "Kompakti", "Complete": "Täydellinen", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Täytä organisaatioprofiili brändin luomiseksi ja selitä tämän Zulip-organisaation tarkoitus.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Kirjoita viesti", "Compose your message here": "Kirjoita viestisi täällä", "Compose your message here...": "Kirjoita viestisi täällä...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Muunna hymiöt ennen lähettämistä (:-) -> 😃)", "Cookie Bot": "Evästebotti", "Copied!": "Kopioitu!", + "Copy URL": "", "Copy address": "Kopioi osoite", "Copy and close": "Kopioi ja sulje", "Copy code": "Kopioi koodi", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Näytetään kaikkia viestejä.", "Currently viewing the entire stream.": "Näytetään koko kanavaa.", "Custom": "Mukautettu", + "Custom URL": "", "Custom emoji": "Mukautetut emojit", "Custom language: {query}": "Mukautettu kieli: {query}", "Custom linkifier added!": "Muokattu linkiyttäjä lisätty!", @@ -302,10 +320,12 @@ "Deactivated": "Poistettu käytöstä", "Deactivated users": "Poistetut käyttäjät", "December": "Joulukuu", + "Default": "", "Default for stream": "Oletus kanavalle", "Default is {language}. Use 'text' to disable highlighting.": "Oletuskieli on {language}. Käytä arvoa 'text' poistaaksesi korostus käytöstä.", "Default language for code blocks": "Oletuskieli koodilohkoille", "Default streams": "Oletuskanavat", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Oletuskanava tälle organisaatiolle", "Default user settings": "Oletuskäyttäjäasetukset", "Default view": "Oletusnäkymä", @@ -314,12 +334,14 @@ "Delete": "Poista", "Delete alert word": "Poista hälytyssana", "Delete all drafts": "Poista kaikki luonnokset", + "Delete all selected drafts": "", "Delete code playground?": "Poistetaanko koodileikkikenttä?", "Delete custom profile field?": "Poistetaanko oma profiilikenttä?", "Delete data export?": "Poistetaanko datan vienti?\n", "Delete draft": "Poista luonnos", "Delete file": "Poista tiedosto", "Delete file?": "Poistetaanko tiedosto?", + "Delete group": "", "Delete icon": "Poista kuvake", "Delete linkifier?": "Poistetaanko linkifier?", "Delete logo": "Poista logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Organisaatiosi koosta riippuen lataaminen voi kestää sekunneista tuntiin. ", "Deprecation notice": "Ilmoitus toiminnon poistumisesta", "Description": "Kuvaus", + "Deselect draft": "", "Desktop": "Työpöytä", "Desktop & mobile apps": "Työpöytä- ja mobiilisovellukset", "Desktop message notifications": "Työpöytäilmoitukset viesteistä", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Yksityiskohtainen viestin kirjoittamisen dokumentaatio", "Detailed search filters documentation": "Yksityiskohtainen hakufiltterien dokumentaatio", "Direct message": "Suoraviesti", + "Direct message to me": "", "Direct messages": "Suoraviestit", "Direct messages and mentions": "Suoraviestit ja maininnat", "Direct messages are disabled in this organization.": "Suoraviestit on poistettu käytöstä tässä organisaatiossa", "Direct messages disabled": "Suoraviestit poistettu käytöstä", + "Disable": "", "Disable notifications?": "Poistetaanko ilmoitukset käytöstä?", "Disabled": "Ei käytössä", "Discard": "Hylkää", @@ -360,9 +385,9 @@ "Display my availability to other users": "Näytä tavoitettavuuteni muille käyttäjille", "Display names of reacting users when few users have reacted to a message": "Näytä reagoivien käyttäjien nimet reaktioiden vieressä kun reagoivia ihmisiä on vähän", "Display on user card": "Näytä käyttäjän kortilla", - "Display settings": "Näytön asetukset", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Siirretäänkö viimeisimmät {total_messages_allowed_to_move, plura, one {viesti} other {# viestiä}}?", "Do you want to add everyone?": "Haluatko lisätä kaikki?", + "Do you want to mark them all as read?": "", "Domain": "Verkkotunnus", "Don’t allow disposable email addresses": "Älä salli kertakäyttöisiä sähköpostiosoitteita", "Download": "Lataa", @@ -388,7 +413,7 @@ "Edit custom profile field": "Muokkaa omaa profiilikenttäää", "Edit linkfiers": "Muokkaa linkittäjiä", "Edit message": "Muokkaa viestiä", - "Edit or reschedule message": "Muokkaa ja uudelleenajasta viesti", + "Edit profile": "", "Edit selected draft": "Muokkaa valittua luonnosta", "Edit selected message or view source": "Muokkaa valittuja viestejä tai näytä lähdekoodia", "Edit status": "Muokkaa tilaa", @@ -398,7 +423,6 @@ "Edit your last message": "Muokkaa viimeisintä viestiäsi", "Edit your profile": "Muokkaa profiiliasi", "Edit {group_name}": "Muokkaa {group_name}", - "Edited ({last_edit_timestr})": "Muokattu ({last_edit_timestr})", "Edited by {full_name}": "Muokkaaja {full_name}", "Education (for-profit)": "Koulutus (ei tuota voittoa)", "Education (non-profit)": "Opetus (ei tuota voittoa)", @@ -461,6 +485,7 @@ "External account type": "Ulkoinen tilityyppi", "External link": "Ulkoinen linkki", "Failed": "Epäonnistunut", + "Failed adding one or more streams.": "", "Failed to create video call.": "Ei voitu aloittaa videopuhelua", "Failed to generate preview": "Esikatselun generointi epäonnistui", "Failed to upload %'{file}'": "Tiedoston %'{file}' lataaminen epäonnistui", @@ -485,11 +510,9 @@ "Filter exports": "Suodata poiminnat", "Filter groups": "Filtteröi ryhmät", "Filter invites": "Suodata kutsut", - "Filter languages": "Suodata kieliä", "Filter linkifiers": "Suodata linkkiyttäjiä", "Filter members": "Filtteröi jäsenet", "Filter muted users": "Suodata käyttäjiä", - "Filter roles": "Suodata roolit", "Filter streams": "Suodata kanavia", "Filter subscribers": "Suodata tilaajia", "Filter topics": "Suodata aiheita", @@ -500,6 +523,9 @@ "First message": "Ensimmäinen viesti", "First time? Read our guidelines for creating and naming streams.": "Ensikertalainen? Lue ohjeemme kanavien luomisesta ja nimeämisestä.", "First time? Read our guidelines for creating user groups.": "Ensimmäinen kerta? Lue ohjelinjat käyttäjäryhmien luomiseksi.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Esimerkiksi, voit asettaa koodipelikentän koodilohot pythoniksi:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Lisää esimerkkejä ja teknisiä yksityiskohtia ohjekeskuksen dokumentaatiossa koodipelikenttien lisäämisestä", "For more examples, see the help center documentation on adding linkifiers.": "Lisää esimerkkejä ohjekeskuksen dokumentaatiossa linkittäjien lisäämisestä", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY-merkintä", "GIPHY integration": "GIPHY-integraatio", "General": "Yleiset", + "Generate URL for an integration": "", "Generate email address": "Generoi sähköpostiosoite", "Generate invite link": "Luo kutsulinkki", "Generate new API key": "Generoi uusi API-avain", @@ -542,14 +569,18 @@ "High contrast mode": "Voimakkaan kontrastin tila", "Hint": "Vihje", "Hint (up to 80 characters)": "Vinkki (enintään 80 merkkiä)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Ihmiset", "Idle": "Joutilas", "If you don't know your password, you can reset it.": "Jos et muista salasanaasi resetoi se.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Huomiotta jätetyt käytöstä poistetut käyttäjät:", "Image": "Kuva", "In a meeting": "Kokouksessa", "Inactive": "Inaktiivinen", "Inactive bots": "Poistetut botit", + "Inbox": "", "Include DMs": "Sisällytä DM:t", "Include content of direct messages in desktop notifications": "Sisällyt suoraviestin sisältö työpöytäilmoituksessa", "Include message content in message notification emails": "Sisällytä viestin sisältö viestien sähköposti-ilmoituksissa", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Sisään tulevat webhookit voivat vain lähettää viestejä.", "Initiate a search": "Aloita haku", "Insert new line": "Lisää uusi rivi", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integraatiot", "Interface": "Rajapinta", "Invalid URL": "Virheellinen URL", @@ -581,6 +614,8 @@ "Inviting...": "Kutsutaan...", "Italic": "Kursivoitu", "January": "Tammikuu", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "Liity videopuheluun", "Join {realm_name}": "Liity kohteeseen {realm_name}", "Joined": "Liittynyt", @@ -599,8 +634,10 @@ "Last 30 days": "Viimeiset 30 päiv˙ää", "Last 6 months": "Viimeiset 6 kuuta", "Last active": "Viimeksi aktiivisena", + "Last edited {last_edit_timestr}": "", "Last message": "Viimeisin viesti", "Last modified": "Viimeksi muokattu", + "Last moved {last_edit_timestr}": "", "Learn more": "Lisätietoja", "Learn more about mentions here.": "Lue lisää maininnoista täältä.", "Learn more about starring messages here.": "Lue lisää viestien merkitsemisestä tähdellä täältä.", @@ -623,6 +660,7 @@ "Log out": "Kirjaudu ulos", "Looking for our integrations or API documentation?": "Etsitkö integraatioita tai API dokumentaatiota?", "MOVED": "SIIRRETTY", + "Main menu": "", "Manage bot": "Hallinnoi bottia", "Manage streams": "Hallinnoi kanavia", "Manage this bot": "Hallinnoi tätä bottia", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mainitse aikavyöhyketietoinen aika", "Mentioned in": "Mainittu", "Mentions": "Maininnat", - "Menu": "Valikko", "Menus": "Valikot", "Message #{stream_name}": "Kirjoita viesti #{stream_name}", "Message #{stream_name} > {topic_name}": "Kirjoita viesti #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Kirjoita viesti {recipient_names}", "Message {recipient_name} ({recipient_status})": "Kirjoita viesti {recipient_name} ({recipient_status})", "Messages in all public streams": "Viestit julkisissa kanavissa", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Viestejä ei automaattisesti merkitä luetuiksi koska tämä ei ole keskustelunäkumä. Muuta asetuksia", "Messages will not be automatically marked as read. Change setting": "Viestejä ei automaattisesti merkitä luetuiksi. Vaihda asetuksia", "Mobile": "Mobiili", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "Siirrä tämä ja kaikki seuraavat viestit tässä aiheessa", "Move topic": "Siirrä aihe", - "Moved ({last_edit_timestr})": "Siirretty ({last_edit_timestr})", "Moved by {full_name}": "Siirtäjä {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Tilaaja voi kutsua uusia tilaajia; uudet tilaajat voivat nähdä viestit, jotka on lähetetty liittymisen jälkeen; piilotettu muilta kuin järjestelmänvalvojilta", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Tilaaja voi kutsua uusia tilaajia; uudet tilaajat voivat nähdä koko viestihistorian; piilotettu muilta kuin järjestelmänvalvojilta", + "Mute": "", "Mute stream": "Mykistä kanava", "Mute this user": "Mykistä tämä käyttäjä", "Mute topic": "Mykistä aihe", @@ -734,38 +773,42 @@ "New password is too weak": "Uusi salasana on liian heikko", "New stream announcements": "Uusien kanavien julkaisut", "New stream message": "Uusi kanavan viesti", + "New stream notifications": "Uuden kanavan ilmoitukset", "New task": "Uusi tehtävä", "New topic": "Uusi aihe", "New user announcements": "Uusien käyttäjien julkaisut", + "New user notifications": "Uuden käyttäjän ilmoitukset", "Next message": "Seuraava viesti", "Next unread direct message": "", "Next unread topic": "Seuraava lukematon aihe", - "Next week": "Ensi viikko", "No bots match your current filter.": "Yksikään botti ei vastaa nykyistä suodatinta.", + "No conversations match your filters.": "", "No custom emoji.": "Ei mukautettuja emojeja.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Yksikään oletuskanava ei vastaa nykyistä suodinta.", "No description.": "Ei kuvausta.", + "No drafts selected": "", "No drafts.": "Ei luonnoksia.", "No exports.": "Ei tiedonpoimintoja", "No invites match your current filter.": "Yksikään kutsu ei vastaa nykyistä suodatinta.", "No language set": "Ei kieltä asetettuna", "No linkifiers set.": "Ei linkkiyttäjiä.", + "No matching results": "", "No matching users.": "Ei vastaavia käyttäjiä", "No one has read this message yet.": "Kukaan ei ole lukenut tätä viestiä vieläkään.", "No owner": "Ei omistajia", "No playgrounds configured.": "Ei leikkikenttiä määriteltynä.", "No restrictions": "Ei rajoituksia", "No scheduled messages.": "", - "No search results": "Ei hakutuloksia", "No search results.": "", "No stream subscriptions.": "Ei kanavan tilauksia.", "No streams": "Ei kanavia", "No topics are marked as resolved.": "Ei aiheita merkittyinä ratkaistuksi.", - "No topics match your current filter.": "Yksikään aihe ei vastaa suodatinta.", "No user group subscriptions.": "Ei käyttäjäryhmien tilauksia.", "No user groups": "", "No user to subscribe.": "Ei tilaajia", "No users match your current filter.": "Yksikään käyttäjä ei vastaa nykyistä suodatinta.", + "No users to add.": "", "No, I'll catch up.": "Ei, kuron kiinni.", "Nobody": "Ei kukaan", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "Ilmoita kanavalle", "Notify this user by email?": "Ilmoitetaanko käyttäjälle sähköpostitse", "November": "Marraskuu", + "Numbered list": "", "October": "Lokakuu", "Old password": "Vanha salasana", "Once you leave this group, you will not be able to rejoin.": "Jos poistut ryhmäst et voi enää päästä takaisin", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Vain omistajat voivat muuttaa näitä asetuksia", "Only stream members can add users to a private stream": "Vain kanavan jäsenet voivat lisätä jäseniä yksityiselle kanavalle. ", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Vain tilaajat voivat muokata kanavan oikeuksia.", "Open": "Avaa", "Open message menu": "Avaa viestin valikko", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "Poliittinen ryhmä", "Posted by {full_name}": "Kirjoittanut {full_name}", + "Preferences": "", "Press > for list of topics": "Valitse > näytä aihelista", "Prevent users from changing their avatar": "Estä käyttäjiä vaihtamasta heidän avataria", "Prevent users from changing their email address": "Estä käyttäjiä vaihtamasta heidän sähköpostiosoitetta", @@ -869,6 +915,7 @@ "Previous message": "Edellinen viesti", "Privacy": "Tietosuoja", "Privacy settings": "Tietosuoja-asetukset", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Yksityinen, suojattu historia", "Private, shared history": "Yksityinen, jaettu historia", "Profile": "Profiili", @@ -883,6 +930,7 @@ "Reactivate bot": "Aktivoi botti uudelleen", "Reactivate this bot": "Reaktivoi tämä botti", "Reactivate this user": "Aktivoi uudelleen tämä käyttäjä", + "Reactivate user": "", "Reactivate {name}": "Aktivoi uudelleen {name}", "Read receipts": "Lue reseptejä", "Read receipts are currently disabled in this organization.": "Vastaanottoilmoitukset on pois käytöstä tässä organisaatiossa", @@ -930,6 +978,7 @@ "Saved as draft": "Tallennettu luonnoksena", "Saved. Please reload for the change to take effect.": "Tallennettu. Lataa uudelleen jotta muutokset tulevat näkyviin.", "Saving": "Tallentaa", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Katso kuinka konfiguroida sähköposti.", "Select a stream": "", "Select a stream below or change topic name.": "Valitse kanava alapuolelta tai vaihda aiheen nimi.", - "Select date and time": "Valitse päiväys ja aika", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Valitse emoji", "Select language": "Valitse kieli", + "Select stream": "", "Send": "Lähetä", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Lähetä automaattisesti viesti uudesta aiheesta", "Send automated notice to old topic": "Lähetä automaattisesti viesti vanhaan aiheeseen", "Send digest emails when I'm away": "Lähetä tiivistelmäsähköpostit, kun olen poissa", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Näytä ladattujen ja linkitettyjen kuvien esikatselut", "Show starred message count": "Näytä tähdellisten viestin määrä", "Show status text": "Näytä statusteksti", + "Show unread counts for": "", "Show/change your API key": "Näytä/muuta API-avain", "Sign up": "Rekisteröidy", "Silent mentions do not trigger notifications.": "Hiljaiset maininnat eivät aiheuta ilmoituksia.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Järjestä viikottaisen liikenteen mukaan", "Sort by name": "Järjestä nimen mukaan", "Sort by number of subscribers": "Järjestä tilaajien määrän mukaan", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Merkitse tähdellä", "Star selected message": "Tähditä valittu viesti", @@ -1024,8 +1080,10 @@ "Subscribe": "Tilaa", "Subscribe them": "Lisää tilaajiksi", "Subscribe to/unsubscribe from selected stream": "Tilaa valittu kanava / lopeta valitun kanavan tilaus", + "Subscribe {full_name} to streams": "", "Subscribed": "Tilattu", "Subscribed streams": "Tilatut kanavat", + "Subscribed successfully!": "Tilattu onnistuneesti!", "Subscriber count": "Tilaajamäärä", "Subscribers": "Tilaajat", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Hälytyssanoja ei ole.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "Hän ylläpitää seuraavia botteja:", "This Zulip server is running an old version and should be upgraded.": "Tämä Zulip-palvelin käyttää vanhaa versiota ja se pitäisi päivittää.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Tämä ei ole julkinen keskustelu", "This is what a Zulip notification looks like.": "Tältä Zulip-ilmoitus näyttää.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Tämä viesti on piilotettu, koska olet mykistänyt lähettäjän.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Aikavyöhyke", "Time's up!": "Aika päättyi!", "Tip: You can also send \"/poll Some question\"": "Vihje: Voit myös lähettää \"/poll Kysymyksesi\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Jos haluat lisätä syntaksin korostuksen moniriviseen koodilohkoon, lisää kielen ensimmäinen Pygments-lyhytnimi ensimmäisen gravis merkkijoukon eli koodirivin aloittavan merkkijonon jälkeen. Voit myös tehdä koodilohkon sisentämällä jokaiselle riville 4 välilyöntiä.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Kutsu käyttäjiä lisäämällä lisenssien määrää tai poistamalla ei-aktiiviset käyttäjät.", "To preserve your reading state, this view does not mark messages as read.": "Lukutilan säilyttämiseksi tämä näkymä ei merkitse viestejä luetuiksi.", "Today": "Tänään", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Vaihda tilauksen tilaa", "Toggle the gear menu": "Vaihda ratas valikon tilaa", "Toggle topic mute": "Vaihda aiheen mykistyksen tilaa", - "Tomorrow": "Huomenna", "Tomorrow at {time}": "", "Topic": "Aihe", "Topic muted": "Aihe mykistetty", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Poista näkymättömyystila käytöstä.", "Two factor authentication": "Kaksivaiheinen todennus", "Type": "Tyyppi", + "URL": "", + "URL for your integration": "", "URL pattern": "URL-kuvio", - "URL prefix": "URL-etuliite", "URL template": "", "USERS": "KÄYTTÄJÄT", "Uncheck all": "Poista valinta kaikista", @@ -1139,6 +1197,7 @@ "Unmute this user": "Poista mykistys tästä käyttäjästä", "Unmute topic": "Poista aiheen mykistys", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Irroita kanava yläosasta", "Unread": "Lukemattomat", "Unread count badge (appears in desktop sidebar and browser tab)": "Lukemattomien määrä -merkki (näkyy työpöydän sivupalkissa ja selaimen välilehdessä)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Katso luonnoksia", - "View edit history": "Näytä muokkaushistoriaa", + "View edit and move history": "", "View file": "Näytä tiedostoa", "View in playground": "Näytä leikkikentällä", "View in {name}": "Näytä kohteessa {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Julkinen verkko", "Wednesday": "Keskiviikko", "Week of {date}": "Viikko {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Tervetuloa takaisin! Sinulla on {unread_msgs_count} lukematonta viestiä. Haluatko merkitä kaikki luetuksi?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Mitä pronomineja ihmiset käyttävät sinusta?", "When you deactivate , they will be immediately logged out.": "Kun poistat käyttäjän , hänet kirjataan välittömästi ulos.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Käytetäänkö jokerimainintoja kuten @all mainintoina ilmoitusten osalta.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Kuka voi liittyä kanavalle?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Kuka voi luoda ja hallinnoida käyttäjäryhmiä", "Who can create private streams": "Kuka voi luoda yksityisiä kanavia", "Who can create public streams": "Kuka voi luoda julkisia kanavia", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Kuka voi luoda julkisen verkon kanavia", "Who can delete their own messages": "Kuka voi poistaa omia viestejään", - "Who can invite users to this organization": "Kuka voi kutsua käyttäjiä tähän organisaatioon", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Kuka voi julkaista kanavalla?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Kenellä on oikeus tehdä @all/@everyone mainintoja isoilla kanavilla", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Sinä ja", "You and {display_reply_to}": "Sinä ja {display_reply_to}", "You and {recipients}": "Sinä ja {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Tällä hetkellä et tilaa tätä kanavaa.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Olet lähettämässä viestiä aiheeseen, joka on merkitty ratkaistuksi. Voit lähettää viestin tai merkitä aiheen ratkaisemattomaksi ensin.", "You are using an old version of the Zulip desktop app with known security bugs.": "Käytät vanhentunutta versiota Zulipin työpöytäsovelluksesta jossa on tietoturvaongelmia.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Et ole tilannut tätä kanavaa ja kukaan ei ole vielä keskustellut siitä!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Voit myös tehdä taulukoita tällä Markdown-typpisellä taulukko syntaksilla.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Voit täysin käyttää tätä yhteisöä ja ottaa osaa keskusteluihin luomalla Zulip-tilin tähän organisatioon.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Sinulla ei ole oikeuksia käyttää jokerimainintoja tällä kanavalla.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Saat", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Olet mykistänyt .", + "You have muted this topic": "", "You have no active bots.": "Sinulla ei ole yhtään aktiivista bottia.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Et ole vielä mykistänyt yhtään käyttäjää.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Et ole vielä lähettänyt yhtään tiedostoa.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Sinua ei ole vielä mainittu!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Sinun on oltava organisaation järjestelmänvalvoja jotta voit luoda kanavan ilman tilaamista.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Sinulla täytyy olla käytössä Zephyr peilaus lähettääksesi viestejä!", "You searched for:": "Haku:", "You subscribed to stream ": "", "You type": "Kirjoitat", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Et ole tilannut tätä kanavaa. Sinulle ei lähetetä ilmoituksia, jos toiset vastaavat viestiisi.", "Your API key:": "API-avaimesi:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Zulip-tilisi on deaktivoitu etkä voi enää kirjautua sisään.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Sulip-palvelin {display_version}", "Zulip Server {display_version} (modified)": "Zulip-palvelin {display_version} (muokattu)", "Zulip Server {display_version} (patched)": "Zulip-palvlein {display_version} (paikattu)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulipin pitää lähettää sähköposteja varmistaakseen käyttäjien osoitteet ja lähettääkseen ilmoituksia.", "Zulip needs your permission to enable desktop notifications.": "Zulip tarvitsee valtuutuksen työpöytäilmoitusten lähettämiseen.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulipin käännökset on tuottanut upea vapaaehtoisten kääntäjien yhteisömme. Jos haluat auttaa, katso Zulip-käännösohjeet.", "[Configure]": "[Määritä]", - "[Disable]": "[Poista käytöstä]", - "[More…]": "[Lisää...]", "[Quoting…]": "[Lainaus...]", - "[Unset]": "[Ei asetettu]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "ja {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "takaisin kanaville", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "hän/hänet, mask.", - "in 1 hour": "tunnissa", - "in 20 minutes": "20 minuutissa", - "in 3 hours": "3 tunnissa", "invisible mode off": "Näkymättömyystila pois", "leafy green vegetable": "vihreä lehtivihannes", "marketing": "markkinointi", "more conversations": "lisää keskusteluja", "more topics": "selaa aiheita", - "or": "tai", "she/her": "hän/hänet, fem.", "they/them": "hän/hänet, neutr.", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} päivää sitten", "{full_name} is typing…": "{full_name} kirjoittaa...", "{hours} hours ago": "{hours} tuntia sitten", - "{items_selected} selected": "{items_selected} valittuna", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} minuuttia aikaa muokata", "{minutes} minutes ago": "{minutes} minuuttia sitten", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Tämän viestin on lukenut {num_of_people} ihmistä:} other {Tämän viestin on lukenut {num_of_people} ihmistä:}}", "{seconds} sec to edit": "{seconds} sekuntia aikaa muokata", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} paikallista aikaa", "{username} [said]({link_to_message}):": "{username} [kirjoitti]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reagoi emojilla {emoji_name}" diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 8541ac4dda..ad66d35b65 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -32,7 +32,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Alex Vandiver , 2023\n" "Language-Team: French (http://app.transifex.com/zulip/zulip/language/fr/)\n" @@ -42,46 +42,47 @@ msgstr "" "Language: fr\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Non autorisé pour les utilisateurs invités" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organisation non valide" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Canaux publics" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Canaux privés" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Messages directs" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Nom de graphique inconnu : {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "L'heure de début est postérieure à l'heure de fin. Début : {start}, Fin : {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Aucune donnée d'analyse disponible. Veuillez contacter votre administrateur système." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "paramètres invalides" @@ -142,29 +143,31 @@ msgid "" msgstr "Votre organisation ne dispose pas de suffisamment de licences Zulip inutilisées pour inviter {num_invites} utilisateurs. " #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Vous devez facturer au moins {} utilisateurs" +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Les factures avec plus de {} licences ne peuvent être traitées sur cette page. Veuillez contacter {} afin de compléter la mise à niveau." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Quelque chose s'est mal passé. Merci de contacter {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Quelque chose s'est mal passé. Merci de recharger la page." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Quelque chose s'est mal passé. Merci de patienter quelques secondes." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -196,7 +199,7 @@ msgstr "Impossible de mettre le plan à jour. Le plan a expiré et a été remp msgid "Unable to update the plan. The plan has ended." msgstr "Impossible de mettre le plan à jour. Ce type de plan n'est plus disponible." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -212,14 +215,14 @@ msgstr "Votre forfait comprend déjà {licenses} licences pour la période de f msgid "You cannot decrease the licenses in the current billing period." msgstr "Vous ne pouvez pas réduire les licences dans la période de facturation en cours." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Le renouvellement de votre plan est déjà programmé avec {licenses_at_next_renewal} licences." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Rien à changer" @@ -231,7 +234,7 @@ msgstr "Aucun client pour cette organisation !" msgid "Session not found" msgstr "Session introuvable" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Doit être un gestionnaire de facturation ou un propriétaire d'organisation" @@ -281,7 +284,7 @@ msgid "" msgstr "\nSi cette erreur est inattendue, vous pouvez contacter l'assistance ." #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Erreur de serveur interne" @@ -583,9 +586,9 @@ msgstr "Statut de facturation" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -603,9 +606,9 @@ msgstr "Voir les prix" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Auto-héberger Zulip" @@ -615,9 +618,9 @@ msgstr "Auto-héberger Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Demande de parrainage" @@ -880,51 +883,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "S'inscrire avec %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Confirmez votre adresse courriel" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Merci pour votre inscription !" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Aucun courriel reçu ? Nous pouvons l'envoyer à nouveau." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Au cas où, jetez un coup d’œil à votre dossier Indésirables" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Si ce message ne disparaît pas, essayez de recharger la page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Impossible de se connecter à Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Les mises à jour peuvent être retardées." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Réessayer bientôt…" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Essayer maintenant." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Messages" @@ -1172,6 +1175,159 @@ msgstr "Utilisateurs normaux" msgid "Digest" msgstr "Résumé" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Bienvenue sur Zulip !" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL de l'organisation: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Utiliser votre compte LDAP pour vous connecter" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Aller à l'organisation" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s sur Zulip : Votre nouvelle organisation" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s sur Zulip : Votre nouveau compte" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Vous avez rejoint l'organisation Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1179,6 +1335,39 @@ msgstr "Résumé" msgid "Hi," msgstr "Salut," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Si vous n'avez pas demandé ce changement, veuillez nous contacter immédiatement à %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Si vous n'avez pas demandé cette modification, veuillez nous contacter immédiatement à <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1192,23 +1381,10 @@ msgstr "Nous avons reçu une demande de changer l'adresse courriel pour le compt msgid "Confirm email change" msgstr "Confirmer la modification de l'adresse email" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Si vous n'avez pas demandé ce changement, veuillez nous contacter immédiatement à %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Vérifiez votre nouvelle adresse courriel" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Si vous n'avez pas demandé cette modification, veuillez nous contacter immédiatement à <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1262,17 +1438,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1377,225 +1542,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Votre courriel %(email)s est enregistré avec les organisations Zulip suivantes hébergées par %(external_host)s :" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Bienvenue sur Zulip !" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL de l'organisation: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Utiliser votre compte LDAP pour vous connecter" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Aller à l'organisation" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s sur Zulip : Votre nouvelle organisation" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s sur Zulip : Votre nouveau compte" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Vous avez rejoint l'organisation Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Exemples de sujets courts" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Aller sur Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "Se désabonner des mails de bienvenue pour %(realm_name)s" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "Organisez vos conversations à l'aide de sujets." - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1680,14 +1626,14 @@ msgstr "Cette invitation expire dans deux jours. Une fois expirée, vous devrez #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1719,21 +1665,45 @@ msgid "" msgstr "Vous recevez ceci parce que @%(mentioned_user_group_name)s a été mentionné." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Vous recevez ceci parce que tout le monde a été mentionné dans #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Vous recevez ceci parce que vous avez activé les notifications par e-mail pour #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1741,21 +1711,21 @@ msgid "" "preferences." msgstr "Répondez directement à cet e-mail, affichez-le dans %(realm_name)s ou gérez les préférences d'e-mail ." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Afficher ou répondre dans %(realm_name)s , ou gérer les préférences de messagerie ." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Répondez dans %(realm_name)s , ou gérez les préférences de messagerie ." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1798,29 +1768,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nCe courriel n'affiche pas le contenu des message parce que vous avez désactivé l'inclusion du contenu des messages dans les notifications par courriel.\nVoir %(alert_notif_url)s pour plus de détails.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Répondez directement à cet e-mail ou affichez-le dans %(realm_name)s:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Afficher ou répondre dans %(realm_name)s:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Répondre en %(realm_name)s:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nNe répondez pas à ce courriel. Le serveur Zulip n'est pas configuré\npour accepter les courriels entrants. Aide:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Géréz vos préférences courriel :" @@ -1983,6 +1953,14 @@ msgstr "Voir le guide Zulip pour les organisations à but non lucratif" msgid "View Zulip guide for communities" msgstr "Voir le guide Zulip pour les communautés" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "Se désabonner des mails de bienvenue pour %(realm_name)s" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Guide Zulip pour les entreprises" @@ -2011,6 +1989,78 @@ msgstr "Guide Zulip pour les organisations à but non lucratif" msgid "Zulip guide for communities" msgstr "Guide Zulip pour les communautés" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Exemples de sujets courts" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Aller sur Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "Organisez vos conversations à l'aide de sujets." + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2399,7 +2449,7 @@ msgid "Incoming webhooks" msgstr "Webhooks entrants" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Robots interactifs" @@ -2899,292 +2949,295 @@ msgid "" " " msgstr "\n Vous pouvez aussi\n utiliser l'application\n de bureau Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "inscriptions" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} vient de s'inscrire sur Zulip. (total: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} a accepté votre invitation à rejoindre Zulip !" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Ordre de mappage non valide." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Champ id {id} introuvable. " -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Nom du canal par défaut invalide '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Le nom du groupe de canaux par défaut est trop long (limite de {} caractères)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Le nom du groupe de canaux par défaut '{}' contient un ou plusieurs caractères NULL (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Groupe de canaux par défaut '{}' non valide" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' est un canal par défaut et ne peut être ajouté à '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Le groupe de canaux par défaut '{group_name}' existe déjà" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Le canal '{stream_name}' est déjà présent dans le groupe de canaux par défaut '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Le canal '{stream_name}' n'est pas présent dans le groupe de canaux par défaut '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Le groupe de canaux par défaut s'appelle déjà '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Le groupe de canaux par défaut '{}' existe déjà" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Pour protéger les utilisateurs, Zulip limite le nombre d'invitations que vous pouvez envoyer en une journée. Étant donné que vous avez atteint la limite, aucune invitation n'a été envoyée." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Votre inscription est trop récente pour que vous puissiez inviter des personnes à rejoindre cette organisation. Merci de demander à un administrateur de cette organisation, ou à un utilisateur plus ancien." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Certaines adresses courriels ne sont pas valides, nous n'avons donc envoyé aucune invitation." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Nous n'avons pas été capable d'inviter quelqu’un." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Certaines de ces adresses utilisent déjà Zulip, nous ne leurs avons donc pas envoyé d'invitation. Nous avons bien sûr envoyé des invitations à toutes les autres personnes !" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Rien à changer" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "propagate_mode non valide sans modification de sujet" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Impossible de modifier le contenu du message en changeant de canal" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Le widgets ne peuvent être modifiés." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} a marqué ce sujet comme résolu." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} a marqué ce sujet comme non résolu." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Ce sujet a été déplacé vers {new_location} par {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Un message a été déplacé de ce sujet vers {new_location} par {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} messages ont été déplacés de ce sujet vers {new_location} par {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Ce sujet a été déplacé ici de {old_location} par {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} messages ont été déplacés ici de {old_location} par {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Votre organisation a désactivé la modification des messages" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Vous n'avez pas la permission de modifier ce message" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "La limite de temps pour modifier ce message est dépassée." -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Vous n'êtes pas autorisé à utiliser des mentions génériques dans ce canal." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Vous n'avez pas la permission de déplacer ce message" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Vous n'avez pas la permission de déplacer ce message puisque vous n'avez pas accès à son canal" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Indicateur non valide '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Indicateur non modifiable : '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Opération d'indicateur de message non valide: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Message(s) invalide(s)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Impossible d'afficher le message" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Exactement un canal attendu" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Type de données non valide pour un canal" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Type de données non valide pour un destinataire" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Les listes de destinataires peuvent intégrer des adresses courriel ou ID d'utilisateurs, mais pas les deux." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Votre robot {bot_identity} a essayé d'envoyer un message sur le canal avec l'ID {stream_id}, mais aucun canal n'existe avec cette ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Votre robot {bot_identity} a essayé d'envoyer un message sur le canal {stream_name}, mais ce canal n'existe pas. Cliquez [ici]({new_stream_link}) pour le créer." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Votre robot {bot_identity} a essayé d'envoyer un message sur le canal {stream_name}. Ce canal existe mais n'a aucun abonné." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Les messages directs sont désactivés dans cette organisation." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Les sujets sont obligatoires dans cette organisation" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: Contenu JSON non valide reçu du programmeur de l'API" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets : {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Cette réaction existe déjà." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Un emoji personnalisé avec le même nom existe déjà." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3198,8 +3251,8 @@ msgid "Scheduled message was already sent" msgstr "Le message programmé a déjà été envoyé" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "La date de livraison prévue doit se situer dans le futur." @@ -3218,18 +3271,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} a modifié les [permissions d'accès](/help/stream-permissions) pour ce canal de **{old_policy}** à **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3238,38 +3305,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} a modifié les [permissions de publication](/help/stream-sending-policy) pour ce canal: * **Anciennes permissions** : {old_policy}. * **Nouvelles permissions** : {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} a renommé le canal {old_stream_name} à {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Aucune description." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} a modifié la description de ce canal." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Ancienne description" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Nouvelle description" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Pour toujours" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Les messages de ce canal seront désormais conservés pour toujours." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3279,56 +3346,59 @@ msgid "" "{summary_line}" msgstr "{user} a modifié la [période de rétention des messages](/help/message-retention-policy) pour ce canal: * **Ancienne période de rétention** : {old_retention_period} * **Nouvelle période de rétention** : {new_retention_period} {summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Vous ne pouvez pas joindre un sous-message à ce message. " #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID d'utilisateur non valide {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Le groupe d'utilisateurs '{}' existe déjà." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Cette API n'est pas disponible pour les robots de webhook entrants." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Le compte n'est pas associé avec ce sous-domaine." -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Ce paramètre n'accepte pas les requêtes de robots." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Doit être un administrateur du serveur" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permission insuffisante" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Ce paramètre requière une authentification HTTP basique." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "En-tête d'autorisation invalide pour l'authentification basique" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "En-tête d'autorisation manquant pour l'authentification basique" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Les robots de webhook n'ont accès qu'aux webhooks" @@ -3343,95 +3413,101 @@ msgstr "Votre compte {username} a été désactivé. Veuillez contacter l'ad msgid "The password is too weak." msgstr "Le mot de passe est trop faible." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Le sous-domaine a besoin d'une taille de 3 ou plus." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Le sous-domaine ne peut pas démarrer ou se terminer avec un '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Le sous-domaine ne peut contenir que des lettres minuscules, des nombres et des '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Le sous-domaine est indisponible. Veuillez en choisir un différent." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Merci d'utiliser votre véritable adresse courriel." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "L'organisation que vous essayez de rejoindre avec {email} n'existe pas." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Veuillez demander une invitation pour {email} de la part de l'administrateur de l'organisation." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Votre adresse courriel, {email}, n'est pas dans un des domaines autorisés à s'inscrire pour les comptes de cette organisation." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Les adresses courriel contenant un + ne sont pas autorisées dans cette organisation." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Il n'est pas possible à de nouveaux membres de rejoindre cette organisation, car toutes les licences Zulip sont en cours d'utilisation. Veuillez contacter la personne qui vous a invité et lui demander d'augmenter le nombre de licences, puis réessayez." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nouveau mot de passe" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Confirmation du nouveau mot de passe" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Vous faites trop de tentatives de connexion. Réessayez dans {} secondes ou contactez l'administrateur de votre organisation pour obtenir de l'aide." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Votre mot de passe a été désactivé car il est trop faible. Réinitialisez votre mot de passe pour en créer un nouveau." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Jeton" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Merci d'entrer au maximum 10 adresses courriel." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Nous n'avons pas pu trouver cette organisation Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Adresse courriel '{}' non valide" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3495,31 +3571,31 @@ msgstr "Les sous-domaines ne peuvent pas démarrer ou se terminer avec un '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Le domaine ne peut contenir que des lettres, des nombres, des '.' et des '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "L'horodatage ne doit pas être négatif." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Le sujet ne doit pas contenir d'octets nuls" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Il faut spécifier exactement 1 ID de canal pour les messages destinés à un canal " -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Cet utilisateur a désactivé la synchronisation des brouillons." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Le brouillon n'existe pas" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Ouvrez Zulip pour afficher le contenu masqué" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Notifications Zulip" @@ -3552,166 +3628,166 @@ msgstr "Possède déjà un compte." msgid "Account has been deactivated." msgstr "Le compte a été désactivé." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "L'emoji '{}' n'existe pas" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personnalisé non valide." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nom d'emoji personnalisé non valide." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "L'emoji personnalisé a été désactivé." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Code d'emoji non valide." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nom d'emoji invalide." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Type d'emoji invalide" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Doit être un administrateur de l'organisation ou le créateur de l'emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Le nom de l'emoji est manquant" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Impossible d'allouer la file d'attente d'événements" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Non connecté : Authentification API ou session utilisateur requise" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Le canal '{stream}' n'existe pas" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Le canal avec ID '{stream_id}' n'existe pas" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "propriétaire de l'organisation" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "utilisateur" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Impossible de désactiver le seul {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Instruction d'inclusion Markdown non valide: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "L'utilisation de l'API a dépassé la limite" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON malformé" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Doit être un membre de l'organisation" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Doit être un administrateur de l'organisation" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Doit être un propriétaire de l'organisation" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Votre nom d'utilisateur ou votre mot de passe est incorrect" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Le compte est désactivé" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "L'organisation a été désactivée" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "L'inscription au service de notification push mobile pour votre serveur a été désactivée" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "L'authentification par mot de passe est désactivée dans cette organisation" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Votre mot de passe a été désactivé et doit être réinitialisé" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Clé API invalide" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Clé API mal formée" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Le type d'événement '{event_type}' n'est présentement pas pris en charge par le webook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Impossible d'analyser la demande : {webhook_name} a-t-il généré cet événement ?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Sous-domaine invalide" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Accès refusé" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3719,6 +3795,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Cette réaction existe déjà." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Cette réaction n'existe pas." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Nom d'utilisateur Twitter" @@ -3760,8 +3844,8 @@ msgid "Settings" msgstr "Paramètres" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Ouvrez les Paramètres pour configurer vos paramètres de notifications et d'affichage." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3773,264 +3857,272 @@ msgid "" "and give it a go!" msgstr "Cliquer ici pour démarrer une nouvelle discussion. Mettez un sujet (2-3 mots), et lancez-vous!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Frameworks d'intégration" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Intégration continue" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Support client" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Déploiement" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Divertissement" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Communication" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financier" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Ressources humaines" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Divers" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Suivi " -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gestion de projet" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productivité" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Contrôle de version" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Le message ne doit pas être vide" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Le message ne doit pas contenir d'octets nuls." -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Opérateur {} non supporté." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Opérateur de restriction non valide : {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Argument 'anchor' manquant" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Ancre invalide" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "Si vous êtes nouveau sur Zulip, consultez notre guide [Getting started with Zulip]({getting_started_url}) !" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Si vous êtes nouveau sur Zulip, consultez notre [Guide de démarrage]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "Notez qu'il s'agit d'une [organisation de démonstration]({demo_organization_help_url}) et qu'elle sera **automatiquement supprimée** dans 30 jours." -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Bonjour, et bienvenue sur Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "Ceci est un message direct de ma part, Welcome Bot." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Je peux aussi vous aider à vous mettre à niveau! Cliquez n'importe où sur ce message ou appuyez sur « r » pour répondre." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Voici quelques messages que je comprends :" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Accéder à [Paramètres de profil](#settings/profile) pour ajouter une [photo de profil](/help/change-your-profile-picture) et modifier vos [informations de profil](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Visitez [Paramètres d'affichage](#settings/display-settings) pour [basculer entre les thèmes clairs et sombres](/help/dark-theme), [choisir votre thème emoji préféré](/help/emoji-and-emoticons# change-your-emoji-set), [changer de langue](/help/change-your-language) et apporter d'autres modifications à votre expérience Zulip." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Dans Zulip, les canaux [déterminent qui reçoit un message](/help/streams-and-topics). Ils sont similaires aux canaux d'autres applications de chat." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Parcourir et s'abonner aux canaux](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "Dans Zulip, les sujets [vous disent de quoi parle un message](/help/streams-and-topics). Ce sont des sujets légers, très similaires à la ligne d'objet d'un e-mail." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Les [raccourcis clavier] (#keyboard-shortcuts) de Zulip vous permettent de naviguer rapidement et efficacement dans l'application." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Appuyer sur `?` à tout moment pour voir un [aide-mémoire](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip utilise le [Markdown](/help/format-your-message-using-markdown), un format intuitif pour **gras**, *italics*, les listes à puces, etc. Cliquer [ici] (#message-formatting) pour obtenir un aide-mémoire." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Consultez nos [conseils de messagerie](/help/messaging-tips) pour en savoir plus sur les réactions emoji, les blocs de code et bien plus encore !" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Consultez notre [Guide de démarrage](/help/getting-started-with-zulip) ou parcourez le [Centre d'aide](/help/) pour en savoir plus !" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Désolé, je n'ai pas compris votre message. Veuillez essayer l'une des commandes suivantes :" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Ceci est un canal privé, tel qu'indiqué par l'iĉone de cadenas à côté du nom de canal." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Les canaux privés ne sont visibles qu'aux membres du canal." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Pour gérer ce canal, ouvrez les [paramètres du Canal]({stream_settings_url}) et cliquez sur `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Ceci est un message dans le canal #**{default_notification_stream_name}** avec le sujet `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Les sujets fournissent un cadre léger pour garder les conversations organisées." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Vous pouvez en apprendre plus sur les sujets sur la page [Canaux et sujets]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Ceci est un message dans le canal #**{default_notification_stream_name}** avec le sujet `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4045,669 +4137,758 @@ msgstr "JSON non valide dans la réponse" msgid "Invalid response format" msgstr "Format de réponse non valide" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Options GCM non valides pour le serveur de relai : priorié {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Options GCM non valides pour le serveur de relai : {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Le jeton n'existe pas." -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Cette organisation a désactivé l'inclusion du contenu des messages dans les notifications push mobiles" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} a mentionné @{user_group_name} :" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} vous a mentionné :" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} a mentionné tout le monde :" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "L'utilisateur n'est pas autorisé pour cette requête" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' n'utilise plus Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "Vous ne pouvez pas envoyer de messages directs en dehors de votre organisation." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Erreur du serveur de relai des notifications push : {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Impossible de trancher entre les arguments '{var_name1}' et '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Argument '{var_name}' manquant" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Mauvaise valeur pour '{var_name}': {bad_value} " -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Charge utile malformée" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "L'argument \"{}\" n'est pas du JSON valide. " +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "Le message programmé n'existe pas" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Sécurité de Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Seuls les administrateurs peuvent envoyer des messages dans ce canal." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Seuls les administrateurs de l'organisation et les modérateurs peuvent créer des canaux." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Les invités ne peuvent envoyer de messages dans ce canal." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Les nouveaux membres ne peuvent envoyer des messages dans ce canal." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Pas autorisé à envoyer sur le canal '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Veuillez renseigner 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Veuillez choisir parmi 'stream' ou 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "ID de canal invalide" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Le nom de canal '{}' est déjà pris." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Nom du canal invalide '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Canaux ({}) inexistant(s)" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Les canaux publics sur le Web ne sont pas activés." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Le groupe de canaux par défaut avec l'ID '{}' n'existe pas." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Le nom du canal ne peut pas être vide !" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Nom du canal trop long (limite : {} caractères)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Caractère non valide dans le nom du canal, à la position {} !" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Le sujet ne peut pas être vide !" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Caractère non valide dans le sujet, à la position {} !" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Les données de l'abonné à ce canal ne sont pas disponibles" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Impossible de retrouver la liste des abonnés pour ce canal privé" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} n'est pas un booléen" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} n'est pas une date" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} n'est pas un dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} n'est pas un nombre réel" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} est trop petit " + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} n'est pas un entier" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} est trop grand" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} n'est pas une liste" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} non valide" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} est trop longue (limite de caractères: {max_length})" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} n'est pas une chaîne" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "L'envoi de ce fichier provoquerait le dépassement du quota de votre organisation." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Impossible de décoder l'image; avez vous envoyé un fichier d'image?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "La taille de l'image dépasse la limite." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Image animée corrompue." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Format d'image animée inconnu." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Nom de groupe d'utilisateurs non valide" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "ID de groupe d'utilisateurs non valide : {}" - -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" + +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nom trop long !" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nom trop court !" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Caractères invalides dans le nom !" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Format invalide !" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Ce nom est déjà utilisé !" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Mauvais nom ou nom d'utilisateur" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Intégration '{}' non valide." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Paramètres de configuration manquants : {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "{} de valeur {} non valide ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Données de configuration non valides !" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Type de robot non valide" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Type d'interface non valide" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "ID d'utilisateur non valide : {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Aucun robot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Aucun utilisateur" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "L'utilisateur est désactivé" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} n'est pas une chaîne" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} ne peut pas être vide." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} non valide" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} est trop longue (limite de caractères: {max_length})" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "La longueur {length} de {var_name} est incorrecte; elle devrait être {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} n'est pas un fuseau horaire reconnu" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} n'est pas une date" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} n'est pas un entier" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} est trop petit " - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} est trop grand" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} n'est pas un nombre réel" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} n'est pas un booléen" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} n'est pas un code de couleur hexadécimal valide" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} n'est pas une liste" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} devrait avoir exactement {length} éléments" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} n'est pas un dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "La clé {key_name} est manquante dans {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Arguments inattendus : {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} n'est pas un allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} est faux)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} n'est pas une URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "Le modèle d'URL doit contenir "%(username)s"." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' ne peut pas être vide." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Le champ ne doit pas avoir de choix en double." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' n'est pas une option valide pour '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} n'est ni une chaîne ni une liste d'entiers" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} n'est ni une chaîne ni un entier" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} n'a pas de longueur" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} est manquant" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "En-tête d'événement HTTP manquant '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Le temps envoyé au webhook {} doit être exprimé en millisecondes." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "La zcommand devrait commencer par une barre oblique." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Commande inexistante : {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Erreur CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "événements de canal" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Disponible sur Zulip Cloud Standard. Mettre à niveau pour accéder." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "Intégration GIPHY désactivée" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "Autoriser les GIF classés Y (Public très jeune)" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "Autoriser les GIF classés G (Public général)" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "Autoriser les GIF classés PG (Conseil parental)" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "Autoriser les GIF classés PG-13 (Conseil parental - moins de 13 ans)" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "Autoriser les GIF classés R (Restreint)" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caractères invalides dans le nom de l'emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Mauvaise expression régulière: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Erreur d'expression régulière inconnue" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "Format d'URL invalide." -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Caractères invalides dans la langue des pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Administrateurs, modérateurs, membres et invités" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Administrateurs, modérateurs et membres" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Administrateurs et modérateurs" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Seulement les administrateurs" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Personne" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Administrateur de l'organisation" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrateur de l'organisation" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Modérateur" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membre" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Invité" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Public sur le Web" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Publique" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Privé, historique protégé" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Privé, historique protégé" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Public, historique protégé" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Tous les abonnés du canal peuvent envoyer des messages" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Seuls les administrateurs de l'organisation peuvent envoyer des messages" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Seuls les administrateurs de l'organisation et les modérateurs peuvent envoyer des messages" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Seuls les membres complets peuvent envoyer des messages" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personnalisé" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji spécial Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "L'utilisateur avec l'ID {} est désactivé" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "L'utilisateur avec l'ID {} est un robot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Liste des options" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Sélecteur de personne" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Texte court" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Texte long" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Sélecteur de date" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Lien" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Compte externe" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronoms" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Adresse IP inconnue" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "un système d'exploitation inconnu" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Un navigateur inconnu" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Argument 'queue_id' manquant" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Argument 'last_event_id' manquant" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Un événement plus récent que {event_id} a déjà été nettoyé !" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "L'événement {event_id} introuvable dans cette file d'attente" @@ -4775,89 +4956,123 @@ msgstr "Un champ avec cette étiquette existe déjà." msgid "Default custom field cannot be updated." msgstr "Le champ personnalisé par défaut ne peut être modifié." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Point final non disponible en production." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend n'est pas activé." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Paramètre '{}' invalide pour la requête anonyme" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Hotspot inconnu : {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Vous devez spécifier au moins une adresse courriel." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Le canal avec ID {} n'existe pas. Aucune invitation n'a été envoyée." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Aucune invitation" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "L'invitation a déjà été révoquée" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "ID de canal non valide {}. Aucune invitation n'a été envoyée." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "L'historique de modification des messages est désactivé dans cette organisation" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Vous n'avez pas la permission de supprimer ce message." -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "La limite de temps pour supprimer ce message est dépassée." -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Message déjà supprimé" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Un trop grand nombre de messages demandés (maximum {})" +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Sujet '{}' introuvable" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Expéditeur manquant" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mise en mirror non autorisée avec un ID utilisateur de destinataire" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Message mirroir non valide" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Le mirroir Zephyr n'est pas autorisé dans cette organisation." @@ -4873,27 +5088,28 @@ msgstr "Cet utilisateur est déjà muet" msgid "User is not muted" msgstr "Cet utilisateur n'est pas muet" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "La présence n'est pas supportée pour les utilisateurs robots." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Pas de données de présence pour {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Le client n'a envoyé aucune nouvelle valeur." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Le client doit transmettre emoji_name s'il transmet emoji_code ou reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Statut invalide: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4909,37 +5125,37 @@ msgid "" "emoji_code" msgstr "Au moins un des arguments suivants doit être présent : emoji_nam, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Cette réaction n'existe pas." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Les confirmations de lecture sont désactivées dans cette organisation." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Langue invalide '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Au moins une méthode d'authentification doit être activée." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider non valide {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "giphy_rating {} non valide" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Doit être une organisation de démonstration." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Domaine non valide : {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4951,42 +5167,43 @@ msgstr "Le domaine {domain} fait déjà partie de votre organisation." msgid "No entry found for domain {domain}." msgstr "Aucune entrée trouvée pour le domaine {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Vous devez envoyer exactement un fichier." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Le fichier envoyé dépasse la limite autorisée de {} Mo" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Taux limite dépassé." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Veuillez demander une exportation manuelle à {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID d'exportation non valide" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Exportation déjà supprimée" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4994,7 +5211,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Vous devez envoyer exactement une icône." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Transformation en lien introuvable." @@ -5002,107 +5219,100 @@ msgstr "Transformation en lien introuvable." msgid "You must upload exactly one logo." msgstr "Vous devez envoyer exactement un logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Bac à sable non valide" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "Format de requête non valide" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "DSN non valide" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "L'utilisateur n'est pas autorisé à exécuter des demandes au nom de '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Les canaux privés ne peuvent pas être définis comme options de défaut." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Vous devez fournir \"new_description\" ou \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Valeur non valide pour \"op\". Spécifier soit \"add\" ou \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Les canaux par défaut ne peuvent pas être rendus privés." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Le canal a déjà ce nom !" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Rien à faire. Spécifiez au moins un \"ajouter\" ou \"supprimer\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} vous a abonné au canal {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} vous a abonné aux canaux suivants :" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Impossible d'accéder au canal ({stream_name})" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Vous pouvez inviter d'autres utilisateurs du mirroir Zephyr uniquement dans des canaux privés." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} a créé les nouveaux canaux : {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} a créé un nouveau canal {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "nouveaux canaux" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** canal créé par {user_name}. *Description:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Propriété d'abonnement inconnue : {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Non abonné au canal avec l'ID {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "JSON du sous-message non valide" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Vous n'êtes pas autorisé à visualiser ce fichier.

" @@ -5118,97 +5328,108 @@ msgstr "L'utilisateur a désactivé les notifications de saisie pour les message msgid "User has disabled typing notifications for direct messages" msgstr "L'utilisateur a désactivé les notifications de frappe pour les messages directs" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Fichier introuvable.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Jeton non valide" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Nom de fichier non valide" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Vous devez spécifier un fichier à envoyer" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Vous ne pouvez envoyer qu'un seul fichier à la fois." -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Aucune nouvelle donnée fournie." -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "L'utilisateur {user_id} est déjà membre de ce groupe" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Il n'y a pas de membre '{}' dans ce groupe d'utilisateurs" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Le groupe d'utilisateurs {group_id} est déjà un sous-groupe de ce groupe." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Le groupe d'utilisateurs {group_id} n'est pas un sous-groupe de ce groupe." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Cette organisation ne permet pas de modifier son avatar." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Le changement d'adresse courriel est désactivé dans votre organisation." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "default_language non valide" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Son de notification '{}' non valide" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Période de traitement par lots des courriels non valide : {} secondes " +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Votre mot de passe Zulip est géré dans l'annuaire LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Mot de passe incorrect !" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Vous dépassez la limite de nombre de tentatives ! Veuillez réessayer dans {} secondes." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Le nouveau mot de passe est trop faible !" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Vous devez envoyer exactement un avatar." @@ -5255,6 +5476,10 @@ msgstr "Nom de robot intégré non valide." msgid "Username already in use" msgstr "Nom d'utilisateur déjà utilisé" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5265,8 +5490,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Les adresses courriel jetables ne sont pas autorisées dans cette organisation" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Adresse courriel '{}' déjà utilisée" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5284,27 +5510,27 @@ msgstr "Identifiant de session Zoom non valide" msgid "Invalid Zoom credentials" msgstr "Identifiant Zoom non valide" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Impossible de créer la réunion Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton n'est pas configuré." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Signature non valide." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Erreur de connexion au serveur BigBlueButton." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Erreur d'authentification sur le serveur BigBlueButton." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Le serveur BigBlueButton a renvoyé une erreur inattendue." @@ -5324,28 +5550,28 @@ msgstr "Cache Kerberos invalide" msgid "We were unable to set up mirroring for you" msgstr "Nous n'avons pas réussi à configurer un mirroir pour vous" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Charge utile non valide" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Requête webhook inconnue" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Le sujet ne peut pas être vide" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Le contenu ne peut être vide" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Entrée JSON malformée" @@ -5364,7 +5590,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Le webhook newrelic nécessite que l'état soit dans [created|activated|acknowledged|closed]" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5372,19 +5598,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Impossible de traiter la charge utile Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Erreur: channels_map_to_topics paramètre autre que 0 ou 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Message de Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Action webhook WordPress inconnue : {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5401,47 +5628,53 @@ msgid "Must validate with valid Zulip server API key" msgstr " À valider avec une clé API valide de serveur Zulip" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID non valide" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Type de jeton invalide" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} n'est pas un nom d'hôte valide." +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "User_id ou user_uuid manquant" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Propriété non valide {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Les données sont hors d'ordre." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Donnée non valide." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Vous devez réinitialiser votre mot de passe." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Paramètre id_token manquant" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP non valide" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Impossible d'utiliser mobile_flow_otp et desktop_flow_otp en en même temps." diff --git a/locale/fr/translations.json b/locale/fr/translations.json index 05643a3e70..3b74499d23 100644 --- a/locale/fr/translations.json +++ b/locale/fr/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(caché)", "(no description)": "(aucune description)", "(no topic)": "(pas de sujet)", + "(or )": "", "(you)": "(vous)", "({message_retention_days} days)": "({message_retention_days} jours)", "/dark (Switch to the dark theme)": "/dark (Passer au thème sombre)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} n'est pas abonné/e à ce canal. Il ou elle ne recevra aucune notification tant que vous ne l'aurez pas abonné/e.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} a {number_of_invites_by_user} invitations non expirées.", "Subscribe": "S'abonner", - "Click here to learn about exporting private streams and messages.": "Cliquez ici pour en savoir plus sur l'exportation des canaux et messages privés.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Mettre à niveau pour plus d'espace.", " to add a new line": "pour ajouter une nouvelle ligne", " to send": "pour envoyer", @@ -82,15 +83,18 @@ "Add alert word": "Ajouter un mot d'alerte", "Add all users": "Ajouter tous les utilisateurs", "Add another user...": "Ajouter un autre utilisateur…", + "Add audio call": "", "Add code playground": "Ajouter une aire de jeux codée", + "Add default streams": "", + "Add email": "", "Add emoji": "Ajouter un emoji", "Add emoji reaction": "Ajouter une réaction emoji", "Add extra emoji for members of the {realm_name} organization.": "Ajouter un emoji supplémentaire pour les membres de l'organisation {realm_name}.", "Add global time": "Ajouter l'heure globale", "Add linkifier": "Ajouter une transformation en lien", "Add members": "Ajouter des membres", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Ajouter un membre…", - "Add new default stream": "Ajouter un nouveau canal par défaut", "Add new user group": "Ajouter un nouveau groupe d'utilisateurs", "Add one or more users": "Ajouter un ou plusieurs utilisateurs", "Add option": "Ajouter une option", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Ajouter des abonnés. Utilisez le groupe d'utilisateurs ou #streamname pour ajouter des abonnés en masse.", "Add task": "Ajouter une tâche", "Add video call": "Ajouter un appel vidéo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Ajouté avec succès !", "Added successfully.": "Ajouté avec succès.", "Administrator": "Administrateur", @@ -124,6 +129,7 @@ "Alerted messages": "Messages alertés", "All": "Tous", "All direct messages": "Tous les messages directs", + "All groups": "", "All messages": "Tous les messages", "All messages including muted streams": "Tous les messages incluant les canaux rendus muets", "All streams": "Tous les canaux", @@ -136,9 +142,11 @@ "Allow subdomains": "Autoriser les sous-domaines", "Allowed domains": "Domaines autorisés", "Allowed domains: {domains}": "Domaines autorisés: {domains}", + "Already members:": "", "Already not subscribed.": "Déjà désabonné.", "Already subscribed to {stream}": "Déjà abonné à {stream}", "Already subscribed users:": "Utilisateurs déjà abonnés:", + "Already subscribed.": "", "Always": "Toujours", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Une clé API peut être utilisé pour accéder à un compte Zulip sans contrôle utilisateur. Toute personne ayant connaissance de votre clé API est en capacité de consulter vos messages, d'en envoyer à votre place, et donc d'usurper votre identité sur Zulip. Il est donc impératif, comme vous le feriez pour un mot de passe, de ne pas diffuser votre clé API.
Nous vous conseillons de créer des robots et d'utiliser leurs comptes et clés API pour accéder à l'API de Zulip, tant que l'action réalisée ne nécessite pas un accès à votre compte personnel.", "An hour ago": "Il y a une heure", @@ -150,6 +158,7 @@ "Archive ?": "Archiver ?", "Archive stream": "Archiver le canal", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "L'archivage du canal désabonnera immédiatement tout le monde. Cette action ne peut pas être annulée.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "Êtes-vous sûr de vouloir continuer ?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Êtes-vous sûr de vouloir créer un nouveau canal ''''{stream_name}'''' et d'y abonner {count} utilisateurs ?", "Are you sure you want to deactivate this organization?": "Êtes-vous sûr de vouloir désactiver cette organization?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Êtes-vous sûr de vouloir renvoyer l'invitation à ?", "Are you sure you want to revoke the invitation to {email}?": "Êtes-vous sûr de vouloir annuler l'invitation à {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Êtes vous sûr de vouloir annuler le lien d'invitation créé par {referred_by} ?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Êtes-vous sûr de vouloir envoyer des notifications @-mentionner aux {subscriber_count} utilisateurs abonnés à #{stream_name} ? Si ce n'est pas le cas, veuillez modifier votre message pour supprimer la mention @{wildcard_mention}.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Êtes-vous sûr de vouloir supprimer tous les messages favoris dans ? Cette action ne peut pas être annulée.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Êtes-vous sûr de vouloir enlever tous vos favoris? Cette action ne peut être annulée.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Les modifications d'avatar sont désactivées dans cette organisation", "Avatar from Gravatar": "Avatar de Gravatar", "Back to streams": "Retour aux canaux", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Comme vous êtes le seul propriétaire de l'organisation, vous ne pouvez pas désactiver votre compte.", "Because you are the only subscriber, this stream will be automatically archived.": "Comme vous êtes le seul abonné, ce canal sera automatiquement archivé.", "Billing": "Facturation", @@ -190,8 +201,11 @@ "Bot owner": "Propriétaire du robot", "Bot type": "Type de robot", "Bots": "Robots", + "Browse 1 more stream": "", "Browse recent conversations": "Parcourir les conversations récentes", "Browse streams": "Parcourir les canaux", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Entreprise", "Busy": "Occupé", "By deactivating your account, you will be logged out immediately.": "En désactivant votre compte, vous serez immédiatement déconnecté.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Cliquer ici pour montrer.", "Click on the pencil () icon to edit and reschedule a message.": "Cliquez sur l'icône du crayon () pour modifier et reprogrammer un message.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Cliquer en dehors de la zone de saisie pour sauvegarder. Nous informerons automatiquement toute personne ajoutée ou supprimée.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Cliquer pour voir ou télécharger.", "Close": "Fermer", "Close modal": "Fermer le modal", @@ -232,7 +248,7 @@ "Commuting": "En transport", "Compact": "Compact", "Complete": "Compléter ", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Complétez le profil de l'organisation afin d'ajouter votre image de marque et expliquer l'objectif de cette organisation Zulip..", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Composer un message", "Compose your message here": "Rédiger votre message ici", "Compose your message here...": "Rédigez votre message ici...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Convertir les emojis avant de les envoyer (:) devient 😃)", "Cookie Bot": "Robot Biscuit", "Copied!": "Copié !", + "Copy URL": "", "Copy address": "Copier l'adresse", "Copy and close": "Copier et fermer", "Copy code": "Copier le code", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Affichage actuel de tous les messages.", "Currently viewing the entire stream.": "Affichage en cours de l'intégralité du canal.", "Custom": "Personnalisé", + "Custom URL": "", "Custom emoji": "Emoji personnalisé", "Custom language: {query}": "Langue personnalisée: {query}", "Custom linkifier added!": "La transformation en lien personnalisée a été ajoutée!", @@ -302,10 +320,12 @@ "Deactivated": "Désactivé", "Deactivated users": "Utilisateurs désactivés", "December": "Décembre", + "Default": "", "Default for stream": "Valeur par défaut pour le canal", "Default is {language}. Use 'text' to disable highlighting.": "{language} par défaut. Utiliser 'text' pour désactiver la coloration syntaxique.", "Default language for code blocks": "Langue par défaut pour les blocs de code", "Default streams": "Canaux par défaut", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Canaux par défaut pour cette organisation", "Default user settings": "Paramètres utilisateur par défaut", "Default view": "Vue par défaut", @@ -314,12 +334,14 @@ "Delete": "Supprimer", "Delete alert word": "Supprimer le mot d'alerte", "Delete all drafts": "Supprimer tous les brouillons", + "Delete all selected drafts": "", "Delete code playground?": "Supprimer le code bac à sable?", "Delete custom profile field?": "Supprimer le champ de profil personnalisé ?", "Delete data export?": "Supprimer l'exportation de données ?", "Delete draft": "Supprimer le brouillon", "Delete file": "Supprimer le fichier", "Delete file?": "Supprimer le fichier?", + "Delete group": "", "Delete icon": "Supprimer l'icône", "Delete linkifier?": "Supprimer la transformation en lien?", "Delete logo": "Supprimer le logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "En fonction de la taille de votre organisation, un export peut prendre de quelques secondes à une heure.", "Deprecation notice": "Avis de dépréciation", "Description": "Description", + "Deselect draft": "", "Desktop": "Bureau", "Desktop & mobile apps": "Applications de bureau et mobile", "Desktop message notifications": "Notifications de message de bureau", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentation complète pour le formattage des messages", "Detailed search filters documentation": "Documentation détaillée sur les filtres de recherche", "Direct message": "Message direct", + "Direct message to me": "", "Direct messages": "Messages directs", "Direct messages and mentions": "Messages directs et mentions", "Direct messages are disabled in this organization.": "Les messages directs sont désactivés dans cette organisation.", "Direct messages disabled": "Messages directs désactivés", + "Disable": "", "Disable notifications?": "Désactiver les notifications ?", "Disabled": "Désactivé", "Discard": "Annuler", @@ -360,9 +385,9 @@ "Display my availability to other users": "Afficher ma disponibilité aux autres utilisateurs", "Display names of reacting users when few users have reacted to a message": "Afficher les noms des utilisateurs qui réagissent lorsque peu d'utilisateurs ont réagi à un message", "Display on user card": "Afficher sur la carte utilisateur", - "Display settings": "Paramètres d'affichage", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Voulez-vous ajouter tout le monde ?", + "Do you want to mark them all as read?": "", "Domain": "Domaine", "Don’t allow disposable email addresses": "Interdire les adresses courriel jetables", "Download": "Télécharger", @@ -388,7 +413,7 @@ "Edit custom profile field": "Modifier le champ de profil personnalisé", "Edit linkfiers": "Modifier les transformations en lien", "Edit message": "Modifier ce message", - "Edit or reschedule message": "Modifier ou reprogrammer le message", + "Edit profile": "", "Edit selected draft": "Modifier le brouillon sélectionné", "Edit selected message or view source": "Modifier le message sélectionné ou afficher la source", "Edit status": "Modifier le statut", @@ -398,7 +423,6 @@ "Edit your last message": "Modifier votre dernier message", "Edit your profile": "Modifier votre profil", "Edit {group_name}": "Modifier {group_name}", - "Edited ({last_edit_timestr})": "Modifié ({last_edit_timestr})", "Edited by {full_name}": "Modifié par {full_name}", "Education (for-profit)": "Éducation (à but lucratif)", "Education (non-profit)": "Éducation (à but non lucratif)", @@ -461,6 +485,7 @@ "External account type": "Type de compte externe", "External link": "Lien externe", "Failed": "Échoué", + "Failed adding one or more streams.": "", "Failed to create video call.": "Impossible de créer la vidéoconférence.", "Failed to generate preview": "Impossible de générer un aperçu", "Failed to upload %'{file}'": "Impossible d'envoyer le fichier %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filtrer les exports", "Filter groups": "Filtrer les groupes", "Filter invites": "Filtrer les invitations", - "Filter languages": "Filtrer les langues", "Filter linkifiers": "Filtrer les transformations en lien", "Filter members": "Filtrer les membres", "Filter muted users": "Filtrer les utilisateurs en sourdine", - "Filter roles": "Filtrer les rôles", "Filter streams": "Filtrer les canaux", "Filter subscribers": "Filtrer les abonnés", "Filter topics": "Filtrer les sujets", @@ -500,6 +523,9 @@ "First message": "Premier message", "First time? Read our guidelines for creating and naming streams.": "Première fois? Lisez nos instructions pour créer et nommer des canaux.", "First time? Read our guidelines for creating user groups.": "Première fois? Lisez nosdirectives pour créer des groupes d'utilisateurs.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Par exemple, pour configurer un terrain de jeu de code pour les blocs de code étiquetés comme Python, vous pouvez définir :", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Attribution GIPHY", "GIPHY integration": "Intégration GIPHY", "General": "Général", + "Generate URL for an integration": "", "Generate email address": "Générer une adresse courriel", "Generate invite link": "Générer un lien d'invitation", "Generate new API key": "Générer une nouvelle clé API", @@ -542,14 +569,18 @@ "High contrast mode": "Mode contraste élevé", "Hint": "Texte d'aide", "Hint (up to 80 characters)": "Texte d'aide (jusqu'à 80 caractères)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humains", "Idle": "Inactif", "If you don't know your password, you can reset it.": "Si vous ne connaissez pas votre mot de passe, vous pouvez le réinitialiser.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Utilisateurs désactivés ignorés :", "Image": "Image", "In a meeting": "En réunion", "Inactive": "Inactif", "Inactive bots": "Robots inactifs", + "Inbox": "", "Include DMs": "Inclure les MPs", "Include content of direct messages in desktop notifications": "Inclure le contenu des messages directs dans les notifications de bureau", "Include message content in message notification emails": "Inclure de contenu des messages dans les courriels de notification", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Les webhooks entrants ne peuvent qu'envoyer des messages.", "Initiate a search": "Lancer une recherche", "Insert new line": "Insérer une nouvelle ligne", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Intégrations", "Interface": "Interface", "Invalid URL": "URL invalide", @@ -581,6 +614,8 @@ "Inviting...": "En cours d'invitation…", "Italic": "Italique", "January": "Janvier", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "Rejoindre l'appel vidéo.", "Join {realm_name}": "Rejoindre {realm_name}", "Joined": "Membre depuis", @@ -599,8 +634,10 @@ "Last 30 days": "30 derniers jours", "Last 6 months": "6 derniers mois", "Last active": "Dernière activité", + "Last edited {last_edit_timestr}": "", "Last message": "Dernier message", "Last modified": "Dernière modification", + "Last moved {last_edit_timestr}": "", "Learn more": "En apprendre plus", "Learn more about mentions here.": "En savoir plus sur les mentions ici .", "Learn more about starring messages here.": "En savoir plus sur le suivi des messages ici .", @@ -623,6 +660,7 @@ "Log out": "Se déconnecter", "Looking for our integrations or API documentation?": "À la recherche de documentation sur nos Intégrations ou notre API?", "MOVED": "DÉPLACÉ", + "Main menu": "", "Manage bot": "Gérer le robot", "Manage streams": "Gérer les canaux", "Manage this bot": "Gérer ce robot", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mentionner une date/heure sensible au fuseau horaire", "Mentioned in": "Mentionné dans", "Mentions": "Mentions", - "Menu": "Menu", "Menus": "Menus", "Message #{stream_name}": "Message #{stream_name}", "Message #{stream_name} > {topic_name}": "Message #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Message {recipient_names}", "Message {recipient_name} ({recipient_status})": "Message {recipient_name} ({recipient_status})", "Messages in all public streams": "Messages dans tous les canaux publics", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Les messages ne seront pas automatiquement marqués comme lus car vous n'êtes pas dans une vue de conversation. Modifier paramètre", "Messages will not be automatically marked as read. Change setting": "Les messages ne seront pas automatiquement marqués comme lus. Modifier paramètre", "Mobile": "Mobile", @@ -681,11 +720,11 @@ "Move some messages?": "Déplacer des messages ?", "Move this and all following messages in this topic": "Déplacer ce message et tous les messages suivants de ce sujet", "Move topic": "Déplacer le sujet", - "Moved ({last_edit_timestr})": "Déplacé ({last_edit_timestr})", "Moved by {full_name}": "Déplacé par {full_name}", "Moving messages": "Déplacement des messages", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Doit être invité par un abonné; les nouveaux abonnés ne peuvent voir que les messages envoyés après leur inscription; caché aux utilisateurs non administrateurs", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Doit être invité par un abonné; les nouveaux abonnés peuvent voir l'historique complet des messages; caché aux utilisateurs non administrateurs", + "Mute": "", "Mute stream": "Rendre le canal muet", "Mute this user": "Mettre cet utilisateur en sourdine", "Mute topic": "Rendre le sujet muet", @@ -734,38 +773,42 @@ "New password is too weak": "Le nouveau mot de passe est trop faible", "New stream announcements": "Annonces de nouveaux canaux", "New stream message": "Nouveau message de canal", + "New stream notifications": "Notifications des nouveaux canaux", "New task": "Nouvelle tâche", "New topic": "Nouveau sujet", "New user announcements": "Annonces de nouveaux utilisateurs", + "New user notifications": "Notifications d'un nouvel utilisateur", "Next message": "Message suivant", "Next unread direct message": "Message direct non lu suivant", "Next unread topic": "Suivant sujet non lu", - "Next week": "Semaine prochaine", "No bots match your current filter.": "Aucun robot ne correspond à votre filtre.", + "No conversations match your filters.": "", "No custom emoji.": "Pas d'émoji personnalisé.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Aucun canal par défaut ne correspond à votre filtre actuel.", "No description.": "Aucune description.", + "No drafts selected": "", "No drafts.": "Aucun brouillon.", "No exports.": "Aucun export.", "No invites match your current filter.": "Aucune invitation ne correspond à votre filtre.", "No language set": "Aucune langue paramétrée", "No linkifiers set.": "Aucune transformation en lien paramétrée", + "No matching results": "", "No matching users.": "Aucun utilisateur correspondant.", "No one has read this message yet.": "Personne n'a encore lu ce message.", "No owner": "Pas de propriétaire", "No playgrounds configured.": "Aucun bac à sable configuré.", "No restrictions": "Aucune restriction", "No scheduled messages.": "Pas de messages programmés.", - "No search results": "La recherche n'a rien trouvé.", "No search results.": "Aucun résultat de recherche.", "No stream subscriptions.": "Aucun abonnement au canal.", "No streams": "Aucun canal", "No topics are marked as resolved.": "Aucun sujet n'est marqué comme résolu.", - "No topics match your current filter.": "Aucun sujet ne correspond à votre filtre actuel.", "No user group subscriptions.": "Aucun abonnement de groupe d'utilisateurs.", "No user groups": "Pas de groupes d'utilisateurs", "No user to subscribe.": "Aucun utilisateur à abonner.", "No users match your current filter.": "Aucun utilisateur ne correspond à votre filtre.", + "No users to add.": "", "No, I'll catch up.": "Non, je verrai par moi-même.", "Nobody": "Personne", "Nobody in this Zulip organization will be able to see this email address.": "Personne au sein de l'organisation Zulip ne pourra voir cette adresse e-mail.", @@ -784,6 +827,7 @@ "Notify stream": "Notifier le canal", "Notify this user by email?": "Avertir cet utilisateur par courriel?", "November": "Novembre", + "Numbered list": "", "October": "Octobre", "Old password": "Ancien mot de passe", "Once you leave this group, you will not be able to rejoin.": "Une fois que vous aurez quitté ce groupe, vous ne pourrez plus le rejoindre.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Seuls les propriétaires peuvent modifier ces paramètres.", "Only stream members can add users to a private stream": "Seuls les membres du canal peuvent ajouter un utilisateur à un canal privé", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Seuls les abonnés à ce canal peuvent modifier les permissions du canal.", "Open": "Ouvrir", "Open message menu": "Ouvrir le menu des messages", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Veuillez indiquer au moins un destinataire valide.", "Political group": "Groupe politique", "Posted by {full_name}": "Publié par {full_name}", + "Preferences": "", "Press > for list of topics": "Appuyez sur > pour afficher la liste des sujets", "Prevent users from changing their avatar": "Empêcher les utilisateurs de modifier leur avatar", "Prevent users from changing their email address": "Empêcher les utilisateurs de changer leur adresse courriel", @@ -869,6 +915,7 @@ "Previous message": "Message précédent", "Privacy": "Confidentialité", "Privacy settings": "Paramètres de confidentialité", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Privé, historique protégé", "Private, shared history": "Privé, historique partagé", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Réactiver le robot", "Reactivate this bot": "Réactiver ce bot", "Reactivate this user": "Réactiver cet utilisateur", + "Reactivate user": "", "Reactivate {name}": "Réactiver {name}", "Read receipts": " Confirmations de lecture", "Read receipts are currently disabled in this organization.": "Les confirmations de lecture sont actuellement désactivées dans cette organisation.", @@ -930,6 +978,7 @@ "Saved as draft": "Sauvegardé comme un brouillon", "Saved. Please reload for the change to take effect.": "Sauvegardé. Veuillez recharger afin que les changements soient pris en compte.", "Saving": "Sauvegarde en cours", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "Programmé pour {formatted_send_later_time}", "Schedule message": "Programmer un message", "Scheduled messages": "Messages programmés", @@ -948,10 +997,15 @@ "See how to configure email.": "Voir comment configurer l'email.", "Select a stream": "Choisir un canal", "Select a stream below or change topic name.": "Sélectionner un canal ci-dessous ou modifier le nom du sujet.", - "Select date and time": "Sélectioner une date et une heure", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Sélectionnez un emoji", "Select language": "Sélectionner une langue", + "Select stream": "", "Send": "Envoyer", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Envoyer un avis automatisé vers un nouveau sujet", "Send automated notice to old topic": "Envoyer une notification automatique à l'ancien sujet", "Send digest emails when I'm away": "Envoyer un résumé par courriel quand je suis absent", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Afficher les aperçus des images envoyées et liées", "Show starred message count": "Afficher le nombre de messages favoris", "Show status text": "Afficher le texte d'état", + "Show unread counts for": "", "Show/change your API key": "Montrer/changer votre clé API", "Sign up": "S'inscrire", "Silent mentions do not trigger notifications.": "Les mentions silencieuses ne déclenchent pas de notifications.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Trier par traffic hebdomadaire estimé", "Sort by name": "Trier par nom", "Sort by number of subscribers": "Trier par nombre d'abonnés", + "Sort by unread message count": "", "Spoiler": "Contenu masqué", "Star": "Mettre en favori", "Star selected message": "Mettre en favori le message sélectionné", @@ -1024,8 +1080,10 @@ "Subscribe": "S'abonner", "Subscribe them": "Les abonner", "Subscribe to/unsubscribe from selected stream": "S'abonner / désabonner du canal sélectionné", + "Subscribe {full_name} to streams": "", "Subscribed": "Abonné", "Subscribed streams": "Canaux abonnés", + "Subscribed successfully!": "Abonnement réussi!", "Subscriber count": "Nombre d'abonnés", "Subscribers": "Abonnés", "Successfully subscribed user:": "L'inscription de l'utilisateur a été effectuée avec succès :", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Il n'y a pas de mots d'alerte actuellement.", "There are no messages here.": "Il n'y a pas de message ici.", "There are no streams you can view in this organization.": "Il n'y a pas de canal que vous pouvez visualiser dans cette organisation.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Il existe un emoji par défaut portant ce nom. Voulez-vous le remplacer par un emoji personnalisé ? Le nom :{emoji_name}: ne fonctionnera plus pour accéder à l'emoji par défaut.", "They administer the following bots:": "Ils gèrent les bots suivants:", "This Zulip server is running an old version and should be upgraded.": "Ce serveur Zulip opère une ancienne version et devrait être mis à jour.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Ceci n'est pas une conversation accessible au public.", "This is what a Zulip notification looks like.": "Voici à quoi ressemble une notification Zulip.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Ce message a été caché parce que vous avez mis l'utilisateur en sourdine.", "This organization is configured so that administrators and moderators can add custom emoji.": "Cette organisation est configurée pour que les administrateurs et les modérateurs puissent ajouter des emojis personnalisés.", "This organization is configured so that administrators and moderators can modify user groups.": "Cette organisation est configurée de manière à ce que les administrateurs et les modérateurs puissent modifier les groupes d'utilisateurs.", @@ -1103,7 +1162,6 @@ "Time zone": "Fuseau horaire", "Time's up!": "Le temps est écoulé!", "Tip: You can also send \"/poll Some question\"": "Astuce : vous pouvez aussi envoyer \"/poll Une question\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Pour ajouter une coloration syntaxique à un bloc de code multi-lignes, ajouter le premier identifiant Pygments de la langue après les premiers caractères backtick. Vous pouvez également créer un bloc de code avec une indentation de 4 espaces à chaque ligne.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Pour inviter des utilisateurs, veuillez augmenter le nombre de licences ou désactiver les utilisateurs inactifs.", "To preserve your reading state, this view does not mark messages as read.": "Afin de préserver votre état de lecture, cette vue ne marque pas les messages comme lus.", "Today": "Aujourd'hui", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Changer l'abonnement", "Toggle the gear menu": "Réduire le menu latéral", "Toggle topic mute": "Rendre le sujet muet / non muet", - "Tomorrow": "Demain", "Tomorrow at {time}": "Demain à {time}", "Topic": "Sujet", "Topic muted": "Sujet rendu muet", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Désactiver le mode invisible", "Two factor authentication": "Authentification à deux facteurs", "Type": "Type", + "URL": "URL", + "URL for your integration": "", "URL pattern": "Motif d'URL", - "URL prefix": "Préfixe l'URL", "URL template": "Format d'URL", "USERS": "UTILISATEURS", "Uncheck all": "Tout désélectionner", @@ -1139,6 +1197,7 @@ "Unmute this user": "Ne plus mettre cet utilisateur en sourdine", "Unmute topic": "Ne plus rendre le sujet muet", "Unmuted": "Mode muet désactivé", + "Unmuted streams and topics": "", "Unpin stream from top": "Désépingler le canal du haut", "Unread": "Non lus", "Unread count badge (appears in desktop sidebar and browser tab)": "Badge de comptage des messages non lus (apparaît dans la barre latérale du bureau et dans l'onglet du navigateur)", @@ -1199,7 +1258,7 @@ "View all streams": "Voir tous les canaux", "View direct messages": "Voir les messages directs", "View drafts": "Afficher les brouillons", - "View edit history": "Voir l'historique des modifications", + "View edit and move history": "", "View file": "Voir le fichier", "View in playground": "Voir dans le bac à sable ", "View in {name}": "Voir dans {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Public sur le Web", "Wednesday": "Mercredi", "Week of {date}": "Semaine du {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Heureux de te revoir! Vous avez {unread_msgs_count} messages non lus. Voulez-vous les marquer tous comme lus ?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Quels pronoms les gens devraient-ils utiliser pour vous désigner ?", "When you deactivate , they will be immediately logged out.": "Lorsque vous désactivez , ils seront immédiatement déconnectés.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Si les mentions génériques telles que @all sont traitées comme des mentions dans le contexte des notifications.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Quelles parties du courriel doivent être incluses dans le message Zulip envoyé à ce canal?", "Who can access the stream?": "Qui peut accéder au canal?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Qui peut créer et gérer les groupes d'utilisateurs", "Who can create private streams": "Qui peut créer des canaux privés", "Who can create public streams": "Qui peut créer des canaux publics", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Qui peut créer des canaux publics Web", "Who can delete their own messages": "Qui peut supprimer ses propres messages", - "Who can invite users to this organization": "Qui peut inviter des utilisateurs à rejoindre cette organisation", "Who can move messages to another stream": "Qui peut déplacer des messages vers un autre canal ?", "Who can move messages to another topic": "Qui peut déplacer des messages vers un autre sujet ?", "Who can post to the stream?": "Qui peut envoyer des messages sur ce canal?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "Qui peut désabonner d'autres personnes de ce canal ?", "Who can use @all/@everyone mentions in large streams": "Qui peut utiliser les mentions @all/@everyone dans les canaux avec beaucoup d'abonnés", "Who can use direct messages": "Qui peut utiliser les messages directs", @@ -1268,14 +1329,17 @@ "You and": "Vous et", "You and {display_reply_to}": "Vous et {display_reply_to}", "You and {recipients}": "Vous et {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "Vous n'êtes pas autorisé à envoyer des messages directs dans cette organisation.", "You are not currently subscribed to this stream.": "Vous n'êtes pas abonnés à ce canal.", "You are not subscribed to any streams.": "Vous n'êtes abonné à aucun canal.", "You are not subscribed to stream ": "Vous n'êtes pas abonné au canal ", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Vous envoyez un message à un sujet résolu. Vous pouvez l'envoyer tel quel ou annuler la résolution du sujet d'abord.", "You are using an old version of the Zulip desktop app with known security bugs.": "Vous utilisez une ancienne version de l'appli bureau Zulip qui contient des failles de sécurités connues.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Vous n'êtes pas abonné à ce canal et personne n'en a encore parlé!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Vous pouvez également créer des tables avec cette syntaxe de type Markdown.", "You can combine search filters as needed.": "Vous pouvez combiner les filtres de recherche selon vos besoins.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Vous pouvez pleinement accéder à cette communauté et participer aux conversations en créant un compte Zulip dans cette organisation.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "Vous n'avez pas la permission de marquer comme non résolus les sujets avec des messages plus anciens que {N, plural, one {# hour} other {# hours}} dans cette organisation.", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "Vous n'avez pas la permission de marquer comme non résolus les sujets avec des messages plus anciens que {N, plural, one {# minute} other {# minutes}} dans cette organisation.", "You do not have permission to use wildcard mentions in this stream.": "Vous n'êtes pas autorisé à utiliser des mentions génériques dans ce canal.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "Vous n'avez encore aucune conversation par messages directs.", + "You follow this topic": "", "You get": "Vous obtenez", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Vous avez rendu muet .", + "You have muted this topic": "", "You have no active bots.": "Vous n'avez aucun robot actif.", "You have no direct messages including {person} yet.": "Vous n'avez pas encore de messages directs incluant {person}.", "You have no direct messages with these users yet.": "Vous n'avez pas encore de messages directs avec ces utilisateurs.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Vous n'avez mis aucun utilisateur en sourdine.", "You have not sent any direct messages to yourself yet!": "Vous ne vous êtes pas encore envoyé de messages directs !", "You have not uploaded any files.": "Vous n'avez pas encore envoyé de fichier.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Vous n'avez pas encore été mentionné !", "You haven't received any messages sent by {person} yet.": "Vous n'avez pas encore reçu de messages envoyés par {person}.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Vous devez être un administrateur de l'organisation pour créer un canal sans vous y abonner.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Vous devez avoir le mirroir Zephyr activé pour pouvoir envoyer des messages !", "You searched for:": "Votre recherche :", "You subscribed to stream ": "Vous vous êtes abonné au canal ", "You type": "Vous écrivez", "You unsubscribed from stream ": "Vous vous êtes désabonné du canal ", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "Vous ne recevrez pas de notifications concernant les nouveaux messages.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Vous n'êtes pas abonnés à ce canal. Vous ne recevrez pas de notification en cas de réponse des autres utilisateurs à votre message.", "Your API key:": "Votre clé API :", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Votre compte Zulip sur a été désactivé et vous ne pourrez plus vous connecter.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "Votre message a été programmé pour {deliver_at}.", "Your message is taking longer than expected to be sent. Sending…": "L'envoi de votre message prend plus de temps que prévu. Envoi en cours...", "Your message was sent to a stream you have muted.": "Votre message a été envoyé à un canal que vous avez mis en sourdine.", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Serveur Zulip {display_version}", "Zulip Server {display_version} (modified)": "Serveur Zulip {display_version} (modifié)", "Zulip Server {display_version} (patched)": "Serveur Zulip {display_version} (correctif)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip doit envoyer un courriel pour valider les adresses des utilisateurs et leur envoyer des notifications.", "Zulip needs your permission to enable desktop notifications.": "Zulip a besoin de votre permission pour activer les notifications de bureau.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Les traductions de Zulip sont élaborées par notre fantasique communauté de traducteurs bénévoles. Si vous souhaitez contribuer, veuillez vous référer au document Zulip translation guidelines.", "[Configure]": "[Configurer]", - "[Disable]": "[Désactiver]", - "[More…]": "[Plus...]", "[Quoting…]": "[Citation…]", - "[Unset]": "[Réinitialiser]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "et {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "retour aux canaux", "beta": "bêta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "ne s'applique pas aux modérateurs et aux administrateurs", "group direct messages with {recipient}": "", "he/him": "il/lui", - "in 1 hour": "Dans 1 heure", - "in 20 minutes": "Dans 20 minutes", - "in 3 hours": "Dans 3 heures", "invisible mode off": "mode invisible désactivé", "leafy green vegetable": "légume vert feuillu", "marketing": "marketing", "more conversations": "plus de conversations", "more topics": "plus de sujets", - "or": "ou", "she/her": "elle/elle", "they/them": "iel/ellui", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Terminé ! {N} message marqué comme lu.} many {Terminé ! {N} messages marqués comme lus.} other {Terminé ! {N} messages marqués comme lus.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "il y a {days_old} jours", "{full_name} is typing…": "{full_name} rédige un message...", "{hours} hours ago": "Il y a {hours} heures", - "{items_selected} selected": "{items_selected} sélectionnés", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# message} many {# messages} other {# messages}} will remain in the current topic.", "{minutes} min to edit": "{minutes} min pour éditer", "{minutes} minutes ago": "Il y a {minutes} minutes", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Ce message a été lu par {num_of_people} personne :} many {Ce message a été lu par {num_of_people} personnes :} other {Ce message a été lu par {num_of_people} personnes :}}", "{seconds} sec to edit": "{seconds} sec pour éditer", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} heure locale", "{username} [said]({link_to_message}):": "{username} [said]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} a réagi avec {emoji_name}" diff --git a/locale/gl/LC_MESSAGES/django.po b/locale/gl/LC_MESSAGES/django.po index bab420a807..680c0649e3 100644 --- a/locale/gl/LC_MESSAGES/django.po +++ b/locale/gl/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,46 +18,46 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -114,32 +114,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -259,7 +259,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -569,9 +569,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -589,9 +589,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -601,9 +601,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -912,7 +912,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -941,7 +941,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1172,8 +1171,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1181,7 +1332,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1191,647 +1374,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1859,15 +1435,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1882,6 +1453,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1895,6 +1471,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1913,6 +1501,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1920,6 +1518,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1931,204 +1541,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2138,6 +1553,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2155,6 +1575,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2162,6 +1587,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2186,14 +1625,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2212,6 +1651,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2229,6 +1680,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2236,6 +1694,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2330,6 +1796,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2343,6 +1827,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2351,6 +1880,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2413,6 +1956,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2441,6 +1992,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2449,6 +2088,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2465,6 +2127,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2740,7 +2460,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3249,16 +2969,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3267,7 +2987,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3324,27 +3044,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3384,72 +3104,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3468,74 +3182,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3568,32 +3290,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3603,38 +3325,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3654,7 +3376,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3675,12 +3397,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3711,90 +3434,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3865,31 +3592,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3969,131 +3696,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4138,7 +3864,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4151,92 +3877,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4430,67 +4156,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4514,8 +4227,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4528,101 +4241,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4645,498 +4445,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5229,57 +4983,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5297,19 +5079,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5325,25 +5107,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5366,26 +5148,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5414,33 +5196,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5448,7 +5230,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5468,88 +5250,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5595,87 +5368,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5756,27 +5529,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5800,24 +5573,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5836,7 +5609,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5844,20 +5617,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5892,20 +5665,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5917,10 +5690,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/gl/translations.json b/locale/gl/translations.json index c376c91f20..43acbef02c 100644 --- a/locale/gl/translations.json +++ b/locale/gl/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/hi/LC_MESSAGES/django.po b/locale/hi/LC_MESSAGES/django.po index 9f946a1d15..9b7338f02f 100644 --- a/locale/hi/LC_MESSAGES/django.po +++ b/locale/hi/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Aruna Maurya, 2022\n" "Language-Team: Hindi (http://app.transifex.com/zulip/zulip/language/hi/)\n" @@ -24,46 +24,47 @@ msgstr "" "Language: hi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "अतिथि उपयोगकर्ताओं के लिए अनुमति नहीं है" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "अमान्य संगठन" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "सार्वजनिक धाराएँ" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "सार्वजनिक धाराएँ" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "अज्ञात चार्ट नाम: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "कोई विश्लेषण डेटा उपलब्ध नहीं है। कृपया अपने सर्वर व्यवस्थापक से संपर्क करें।" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "अमान्य मापदण्ड" @@ -124,29 +125,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "आपको कम से कम {} उपयोगकर्ताओं के लिए चालान करना होगा।" - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "कुछ गलत हो गया। कृपया पृष्ठ को फिर से लोड करें।" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "कुछ गलत हो गया। कृपया कुछ सेकंड प्रतीक्षा करें और पुनः प्रयास करें।" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -178,7 +181,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -194,14 +197,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -213,7 +216,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -263,7 +266,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -565,9 +568,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -585,9 +588,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -597,9 +600,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -862,51 +865,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "इसके साथ साइन अप करें %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "साइन अप करने के लिए धन्यवाद!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "फिर भी कोई ईमेल नहीं? हम इसे पुनः भेज सकते हैं।" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "बस मामले में, अपने स्पैम फ़ोल्डर पर एक नज़र डालें।" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "अब कोशिश करो।" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "संदेश" @@ -1154,6 +1157,159 @@ msgstr "सामान्य उपयोगकर्ता" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1161,6 +1317,39 @@ msgstr "" msgid "Hi," msgstr "नमस्ते," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1174,22 +1363,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1244,17 +1420,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1359,225 +1524,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1662,14 +1608,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1701,21 +1647,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1723,21 +1693,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1780,29 +1750,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1965,6 +1935,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1993,6 +1971,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2381,7 +2431,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2881,290 +2931,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "अमान्य ऑर्डर मैपिंग।" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "इस संगठन के लिए आमंत्रण भेजने के लिए आपका खाता बहुत नया है। एक संगठन व्यवस्थापक, या एक अधिक अनुभवी उपयोगकर्ता से पूछें।" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "कुछ ईमेल मान्य नहीं हुए, इसलिए हमने कोई निमंत्रण नहीं भेजा।" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "हम किसी को भी आमंत्रित करने में सक्षम नहीं थे।" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "उनमें से कुछ पते पहले से ही ज़ूलिप का उपयोग कर रहे हैं, इसलिए हमने उन्हें निमंत्रण नहीं भेजा। हमने सभी को निमंत्रण भेजा!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3180,8 +3233,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3200,18 +3253,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3220,38 +3287,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3261,56 +3328,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3325,94 +3395,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "उपडोमेन अनुपलब्ध है। कृपया एक अलग चुनें।" +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "जिस संगठन को आप {email} के उपयोग से जोड़ने का प्रयास कर रहे हैं वह मौजूद नहीं है।" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "कृपया संगठन व्यवस्थापक से {email} के लिए निमंत्रण का अनुरोध करें।" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "आपका ईमेल पता, {email}, उन डोमेन में से एक नहीं है, जिन्हें इस संगठन में खातों के लिए पंजीकरण करने की अनुमति है।" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3477,31 +3553,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3534,166 +3610,166 @@ msgstr "" msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3701,6 +3777,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3742,7 +3826,7 @@ msgid "Settings" msgstr "सेटिंग्स" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3755,264 +3839,272 @@ msgid "" "and give it a go!" msgstr "एक नई बातचीत शुरू करने के लिए यहां क्लिक करें। एक विषय चुनें (2-3 शब्द सबसे अच्छा है), और इसे एक बार दें!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4027,669 +4119,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "सार्वजनिक" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4757,66 +4938,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4824,22 +5038,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4855,26 +5070,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4891,36 +5107,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4933,42 +5149,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4976,7 +5193,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4984,107 +5201,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5100,97 +5310,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "इस संगठन में ईमेल पता परिवर्तन अक्षम हैं।" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "आपका Zulip पासवर्ड LDAP में प्रबंधित है" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5237,6 +5458,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5247,7 +5472,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5266,27 +5492,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5306,28 +5532,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5346,7 +5572,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5354,19 +5580,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5383,47 +5610,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "अमान्य तथ्य" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "अमान्य OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/hi/translations.json b/locale/hi/translations.json index c7f14c5d5f..de497ec94f 100644 --- a/locale/hi/translations.json +++ b/locale/hi/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "(आप)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "कोई अन्य उपयोगकर्ता जोड़ें ...", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "इमोजी जोड़ें", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "एक या अधिक उपयोगकर्ता जोड़ें", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "वीडियो कॉल जोड़ें", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "सभी संदेश", "All messages including muted streams": "", "All streams": "सभी शाखाये ", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "एक Zulip अकाउंट को प्रोग्राम करने के लिए API कुंजी का उपयोग किया जा सकता है। आपकी API कुंजी तक पहुंच रखने वाले किसी भी व्यक्ति के पास आपके संदेशों को पढ़ने, अपनी ओर से संदेश भेजने, और अन्यथा Zulip पर आपको प्रतिरूपित करने की क्षमता है, इसलिए आपको अपनी API कुंजी को सावधानी से अपने पासवर्ड की रक्षा करना चाहिए। हम ज़ुल्फ़ एपीआई का उपयोग करने के लिए बॉट्स अकाउंट और एपीआई कुंजियों का उपयोग करके बॉट्स बनाने और उपयोग करने की सलाह देते हैं, जब तक कि कार्य को आपके खाते तक पहुंच की आवश्यकता न हो।", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "बिलिंग", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "बॉट", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "बंद करे", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "अपना संदेश यहाँ लिखें", "Compose your message here...": "अपना संदेश यहां लिखें ...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "हटाना", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "पदावनति सूचना", "Description": "विवरण", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "संदेश संपादित करें", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "चयनित ड्राफ्ट संपादित करें", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "अपना अंतिम संदेश संपादित करें", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "पहला संदेश", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "सामान्य", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "मनुष्य", "Idle": "दूर उपयोगकर्ताओं", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "खोज आरंभ करें", "Insert new line": "नई लाइन डालें", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "को आमंत्रित करें ...", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "आखिरी सन्देश", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "लोग आउट", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "में वर्णित", "Mentions": "उल्लेख", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": " धारा म्यूट करें", "Mute this user": "", "Mute topic": "विषय म्यूट करें", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "नया स्ट्रीम संदेश", + "New stream notifications": "", "New task": "", "New topic": "नया विषय", "New user announcements": "", + "New user notifications": "", "Next message": "अगला संदेश", "Next unread direct message": "", "Next unread topic": "अगला अपठित विषय", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "नहीं, मै पढ़ लूंगा।", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "पिछले संदेश", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "ड्राफ्ट के रूप में सहेजा गया", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "भेजना", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "साइन अप करें", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "चयनित संदेश चिह्नित करें", @@ -1024,8 +1080,10 @@ "Subscribe": "सदस्यता लें", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "सदस्यता लिया", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "विषय म्यूट टॉगल करें", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "विषय", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "विषय अनम्यूट करें", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "अपठित", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "ड्राफ्ट देखें", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "आप और", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "आपने इस स्ट्रीम की सदस्यता नहीं ली है और किसी ने भी इस बारे में बात नहीं की है!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "आप अभी तक उल्लेख नहीं किया गया है!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/hu/LC_MESSAGES/django.po b/locale/hu/LC_MESSAGES/django.po index 3679319c4a..de82eb7ff9 100644 --- a/locale/hu/LC_MESSAGES/django.po +++ b/locale/hu/LC_MESSAGES/django.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Eekain, 2021-2022\n" "Language-Team: Hungarian (http://app.transifex.com/zulip/zulip/language/hu/)\n" @@ -26,46 +26,47 @@ msgstr "" "Language: hu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Vendég felhasználóknak nem engedélyezett" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Hibás szervezet" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Nyilvános üzenetfolyamok" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Privát üzenetfolyamok" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Ismeretlen diagramnév: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "A kezdés ideje a befejezési idő utánra esik. Kezdés: {start}, befejezés: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Nincs elemzési adat. Lépj kapcsolatba a szerver adminisztrátorával!" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Érvénytelen paraméterek" @@ -126,29 +127,31 @@ msgid "" msgstr "A szerveződésednek nincs elegendő Zulip licensze, hogy meghívjon {num_invites} felhasználót." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Legalább {} felhasználóhoz kell számlát készítened." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Több, mint {} licencet tartalmazó számla erről az oldalról nem dolgozható fel. A frissítés befejezéséhez lépjen kapcsolatba a következővel: {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Valami elromlott. Kérjük, lépjen kapcsolatba a következővel: {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Valami gond van. Töltsd újra az oldalt!" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Valami gond van. Várj pár másodpercet és próbáld újra." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -180,7 +183,7 @@ msgstr "Szerződésmódosítás nem lehetséges. A szerződés lejárt, vagy új msgid "Unable to update the plan. The plan has ended." msgstr "Szerződésmódosítás nem lehetséges. A szerződés lejárt." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -196,14 +199,14 @@ msgstr "A szerződésed szerint már {licenses} licensz érhető el a jelen szá msgid "You cannot decrease the licenses in the current billing period." msgstr "Ebben a számlázási időszakban már nem csökkentheted licenszeid számát." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "A szerződésed már ütemezetten átáll {licenses_at_next_renewal} licenszre." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Nincs változtatnivaló." @@ -215,7 +218,7 @@ msgstr "Ennél a szervezetnél nincs felhasználó!" msgid "Session not found" msgstr "Böngészési folyamat nem található" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Számlázási adminisztrátornak vagy a szervezet tulajdonosának kell lenned" @@ -265,7 +268,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Belső kiszolgáló hiba." @@ -567,9 +570,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -587,9 +590,9 @@ msgstr "Áraink" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Légy Zulip szerver-gazda" @@ -599,9 +602,9 @@ msgstr "Légy Zulip szerver-gazda" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Támogatást igényelni" @@ -864,51 +867,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Regisztráció %(identity_provider)s segítségével" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Köszönjük a feliratkozást!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Még nem kaptál e-mailt? Újraküldhetjük." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Ellenőrizd a Spam mappát is." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Nem sikerült a Zuliphoz csatlakozni." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "A frissítések lehet, késnek." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Újrapróbálkozás..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Most próbáld!" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Üzenetek" @@ -1156,6 +1159,159 @@ msgstr "Normál felhasználók" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Üdvözlünk a Zulipban!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Szervezet URL-je: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Használd LDAP-fiókod a bejelentkezéshez" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s a Zulipon: az új szervezeted részletei" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)sa Zulipon: az új fiókod részletei" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Beléptél a(z) %(realm_name)s nevű Zulip szervezetbe." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1163,6 +1319,39 @@ msgstr "" msgid "Hi," msgstr "Szia," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Ha nem Ön kérte ezt a módosítást, kérjük, azonnal lépjen kapcsolatba velünk a %(support_email)s telefonszámon." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Ha nem te voltál, keress bennünket haladéktalanul a <%(support_email)s> címen." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1176,23 +1365,10 @@ msgstr "E-mail változtatási kérés érkezett a Zulip fiókodhoz a %(realm_uri msgid "Confirm email change" msgstr "E-mail változtatás megerősítése" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Ha nem Ön kérte ezt a módosítást, kérjük, azonnal lépjen kapcsolatba velünk a %(support_email)s telefonszámon." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Új e-mail cím ellenőrzése" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Ha nem te voltál, keress bennünket haladéktalanul a <%(support_email)s> címen." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1246,17 +1422,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1361,225 +1526,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "E-mail címed %(email)s a következő Zulip szerveknél rendelkezik fiókkal %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Üdvözlünk a Zulipban!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Szervezet URL-je: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Használd LDAP-fiókod a bejelentkezéshez" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s a Zulipon: az új szervezeted részletei" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)sa Zulipon: az új fiókod részletei" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Beléptél a(z) %(realm_name)s nevű Zulip szervezetbe." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Példák rövid témákra" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Tovább a Zulipba" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1664,14 +1610,14 @@ msgstr "Ez a meghívás két nap múlva lejár. Ha lejárt, %(referrer_name)stud #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1703,21 +1649,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1725,21 +1695,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1782,29 +1752,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nEz az e-mail nem tartalmazza az üzenet szövegét, mert letiltottad, hogy az e-mail értesítésekben üzenetszöveg jelenjen meg.\nTovábbi részletekért lásd a/az %(alert_notif_url)s oldalt.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\n Ne válaszolj erre az e-mailre. Ezen a Zulip szerveren a bejövő levelek feldolgozása\nnincs beállítva. Súgó:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "E-mail beállítások kezelése:" @@ -1967,6 +1937,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1995,6 +1973,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Példák rövid témákra" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Tovább a Zulipba" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2383,7 +2433,7 @@ msgid "Incoming webhooks" msgstr "Bejövő webhookok" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Csevegő robotok" @@ -2883,292 +2933,295 @@ msgid "" " " msgstr "\n Ezenkívül használhatod még a Zulip asztali alkalmazást is." -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "feliratkozás" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} épp most regisztrált a Zulip szolgáltatásba. (összesen: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} elfogadta a Zulip meghívódat!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Érvénytelen sorrend megfeleltetés." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Mező id {id} nem található." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Érvénytelen az alapértelmezett üzenetfolyam csoport megnevezése '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Az alapértelmezett üzenetfolyam csoport név túl hosszú (maximum: {} karakter)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Az alapértelmezett üzenetfolyam csoport név '{}' NULL (0x00) karaktert tartalmaz." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Érvénytelen alapértelmezett üzenetfolyam-csoport {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "A/az '{stream_name}' egy alapértelmezett üzenetfolyam, és nem adható hozzá a/az '{group_name}' csoporthoz" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "A '{group_name}' alapértelmezett üzenetfolyam-csoport már létezik" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "A folyam '{stream_name}' már az alapértelmezett folyami csoport '{group_name}' része" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "A folyam '{stream_name}' nem része az alapértelmezett '{group_name}' folyami csoportnak" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Az alapértelmezett folyamnak már ez a neve '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Alapértelmezett üzenetfolyami csoport '{}' már létezik" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "A felhasználók védelme érdekében a Zulip korlátozza az egy napon belül elküldhető meghívók számát. Mivel elérte a korlátot, nem küldtünk ki meghívót." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "A fiókod túl új ahhoz, hogy meghívókat küldhess ehhez a szervezethez. Kérj meg egy szervezeti adminisztrátort vagy egy tapasztaltabb felhasználót." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Néhány e-mail nem volt érvényes, ezért egy meghívót sem küldtünk ki." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Senki sem sikerült meghívnunk." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Néhány címzett már használja a Zulipot, ezért nem küldtünk nekik meghívót. Mindenki másnak viszont igen!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nincs változtatnivaló" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Érvénytelen propagate_mode a téma szerkesztése nélkül" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Az üzenetfolyam változtatása közben az üzenetszöveg nem módosítható" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "A widgetek nem szerkeszthetőek." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} lezárta ezt a témát." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} lezáratlannak jelölte ezt a témát." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "A szervezetben az üzenetek szerkesztésének lehetősége ki van kapcsolva." -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Nincs jogosultságod az üzenet szerkesztésére" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Az üzenet módosítására rendelkezésre álló időkorlát letelt." -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Nincs engedélyed csoportos említések használatára ebben az üzenetfolyamban." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Nincs engedélyed ennek az üzenetnek a mozgatásához" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Nincs engedélyed az üzenet mozgatásához, mert nincs hozzáférésed az üzenetfolyamhoz" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Érvénytelen kapcsoló: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Kapcsoló nem szerkeszthető: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Érvénytelen kapcsolóbeállítás: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Érvénytelen üzenet(ek)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Az üzenet megjelenítése nem sikerült" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Csak egy üzenetfolyamra van szükség" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Érvénytelen adattípus az üzenetfolyam számára" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Érvénytelen adattípus a címzettek számára" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "A címzettek listája vagy e-maileket, vagy felhasználói azonosítókat tartalmazhat, de ezek nem vegyíthetőek." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "A/az {bot_identity} robot megpróbált üzenetet küldeni a/az {stream_id} üzenetfolyam ID-vel, de ilyen azonosítójú üzenetfolyam nem létezik." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "A/az {bot_identity} robot megpróbált üzenetet küldeni a/az {stream_name} üzenetfolyamba, de az nem létezik. Kattints [ide] ({new_stream_link}) a létrehozásához." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "A/az {bot_identity} robot megpróbált üzenetet küldeni a/az {stream_name} üzenetfolyamba. Az üzenetfolyam létezik, de nincsenek feliratkozói." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgetek: az API programozó érvénytelen JSON tartalmat küldött" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgetek: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Ez a reakció már létezik." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Ilyen nevű egyedi hangulatjel már létezik." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3182,8 +3235,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3202,18 +3255,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3222,38 +3289,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} átnevezte a/az {old_stream_name} üzenetfolyamot erre: {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Nincs leírás." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Régi leírás" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Új leírás" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Örökre" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Ebben az üzenetfolyamban az üzeneteket örökre megőrizzük mostantól." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3263,56 +3330,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Nem csatolhatsz alüzenetet ezen üzenethez." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Érvénytelen felhasználói ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Felhasználó csoport '{}' már létezik." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Ez az API nem érhető el bejövő webhook robotok számára." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "A fiók nincs ehhez az aldomainhez rendelve." -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Ez a végpont nem fogad el robotoktól érkező kéréseket." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Szerver adminisztrátornak kell lenned" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Elégtelen jogosultság" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Ez a végpont HTTP basic authentikációt igényel." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Érvénytelen authorizációs fejléc basic authentikáció során" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Hiányzó authorizációs fejléc a basic auth során" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "A webhook robotok csak webhookokat érhetnek el" @@ -3327,95 +3397,101 @@ msgstr "" msgid "The password is too weak." msgstr "A jelszó túl gyenge." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Az aldomainnek legalább 3 karakter hosszúnak kell lennie." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Az aldomain nem kezdődhet kötőjellel." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Az aldomain nevében csak kisbetűk, számok és kötőjelek lehetnek." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Az aldomain nem áll rendelkezésre. Válassz egy másikat." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "A valós e-mail címedet használd." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Nem létezik a szervezet, amibe a/az {email} címmel megpróbálsz belépni." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Kérjük igényelj egy invitációt a/az {email} címeddel a szervezet adminisztrátorától." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "A/az {email} email címed domain neve nincs azok között a domain nevek között, ahonnan engedélyezett a regisztráció ebbe a szervezetbe." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Ebben a szervezetben a + jelet tartalmazó email címek nem használhatóak." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Új tagok nem csatlakozhatnak ehhez a szerveződéshez, mert az összes Zulip lincenszük már használt. Kérjük, szólj a tagnak, aki meghívott, hogy növeljék a lincenszek számát, majd próbálkozz újra." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Új jelszó" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Új jelszó megerősítése" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "A jelszavad túl gyengének bizonyult, ezért zároltuk. Állítsd vissza a jelszavad, hogy egy újat beállíthass." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Maximum 10 e-mail címet adhatsz meg." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Nem találtuk meg ezt a Zulip szervezetet." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Érvénytelen e-mail '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3479,31 +3555,31 @@ msgstr "Az aldomain nem kezdődhet vagy végződhet kötőjellel." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "A domain csak betűket, számokat, pontot és kötőjelet tartalmazhat." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Az időpont nem lehet negatív." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "A témakör nem tartalmazhat null byte-ot" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Üzenetfolyamba való üzenet-dobáshoz pontosan 1 üzenetfolyam ID-t kell megadni" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "A felhasználó letiltotta a piszkozatok összehangolását." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Piszkozat nem található" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Nyisd meg a Zulipot, hogy lásd a zárolt tartalmat" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip értesítések" @@ -3536,166 +3612,166 @@ msgstr "Már van fiókja." msgid "Account has been deactivated." msgstr "A fiók letiltásra került." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Ilyen hangulatjel '{}' nem létezik" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Érvénytelen egyedi hangulatjel." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Érvénytelen egyedi hangulatjel név." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Ez az egyedi hangulatjel deaktiválásra került." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Érvénytelen hangulatjel kód." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Érvénytelen hangulatjel név." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Érvénytelen hangulatjel típus." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Ehhez szervezeti adminisztrátornak vagy emoji szerzőnek kell lenned" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "A hangulatjelnek nincs neve" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Az esemény sor allokálása nem sikerült." -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Nem vagy bejelentkezve: API auth vagy felhasználói folyamat szükséges." -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Ez '{stream}' az üzenetfolyam nem létezik!" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "ID szerinti üzenetfolyam '{stream_id}' nem létezik" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "szervezet tulajdonosa" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "felhasználó" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Ez az egyetlen {entity}, ezért nem tiltható le." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Érvénytelen Markdown include statement: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Az API használat túllépte a limitet" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Hibás formátumú JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Szervezeti tagnak kell lenned" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Szervezeti adminisztrátornak kell lenned" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "A szervezet tulajdonosának kell lenned" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "A felhasználóneved vagy a jelszavad helytelen" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "A fiók letiltásra került" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Ez a szervezet letiltásra került." -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "A jelszavas belépés ennél a szerveződésnél nem elérhető" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "A jelszavad el lett tiltva, állítsd vissza" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Érvénytelen API kulcs" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Hibás formátumú API kulcs" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Az eseményt '{event_type}' még nem támogatja a webhook {webhook_name} " +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Érvénytelen subdomain" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Hozzáférés megtagadva" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3703,6 +3779,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Ez a reakció már létezik." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Ez a reakció nem létezik." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3744,8 +3828,8 @@ msgid "Settings" msgstr "Beállítások" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Az értesítési és megjelenítési beállításokat a Beállítások között találod." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3757,264 +3841,272 @@ msgid "" "and give it a go!" msgstr "Kattints ide új párbeszéd indításához. Válassz témát (2-3 szó is elég), és már mehet is!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integrációs keretrendszerek" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Folyamatos integráció" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Ügyfélszolgálat" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Telepítés" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Szórakoztatás" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Kommunikáció" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Gazdasági" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Egyéb" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Projekt menedzsment" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Hatékonyság" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Verziókezelés" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Az üzenet nem lehet üres" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Az üzenet nem tartalmazhat null byteokat." -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "A {} kapcsoló nem támogatott." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Érvénytelen postosító kifejezés: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Üres az 'anchor' mező." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Érvénytelen anchor" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Ha még nem ismeri a Zulipot, tekintse meg [Bevezető útmutatónkat] ({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Üdv, köszönt a Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Segíthetek szárnypróbálgatásaidban! Kattints erre az üzenetre, vagy nyomj egy 'r'-t, hogy válaszolj." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Ezt a pár üzenetet értettem:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Böngéssz az üzenetfolyamok között, és iratkozz fel rájuk] (#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Bármikor nyomjd meg a `?` gombot, hogy megnyiss egy [gyorsgomblistát](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Sajnálom, nem értettem az üzeneted. Kérjük, válassz az alábbi parancsok közül:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Ez privát üzenetfolyam, amit a folyam neve melletti lakat is jelez." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Privát üzenetfolyamokat csak a folyam tagjai tekinthetnek meg." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Eme folyam kezeléséhet menj az [Üzenetfolyam beállítása]({stream_settings_url}) lehetőségre, és kattints ide: `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Ez egy üzenet a #**{default_notification_stream_name}** streamen `téma demonstráció` témában." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "A Téma egy egyszerű eszköz, ami segít rendszerezni a beszélgetéseket." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Több információ a témákról elérhető a [Streameknél és témáknál]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Ez egy üzenet a #**{default_notification_stream_name}** streamen `swimming turtles` témában." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4029,669 +4121,758 @@ msgstr "Érvénytelen JSON érkezett vissza" msgid "Invalid response format" msgstr "Érvénytelen válasz format" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Érvénytelen GCM bouncer: priority {!r} beállítás" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Érvénytelen GCM bouncer: priority {} beállítás" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "A token nem létezik" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Ez a szervezet nem engedélyezte az üzenetek tartalmának megjelenítését a telefonos értesítésekben" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} megemlítette, hogy @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} kihívott téged:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} kihívott mindenkit:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Erre a lekérdezésre a felhasználó nem jogosult" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' már nem használja a Zulip-et." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push értesítések bouncer hiba: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Nem tudtunk választani a/az '{var_name1}' és '{var_name2}' paraméterek közül" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Hiányzó '{var_name}' érték" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Rossz érték megadva ennél '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Sérült payload" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Ez az érték \"{}\" nem érvényes JSON szerint." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Fiókbiztonság" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Erre az üzenetfolyamra csak szervezeti adminisztrátorok írhatnak!" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Erre a folyamra csak adminok és moderátorok írhatnak." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Vendégek nem írhatnak erre az üzenetfolyamra." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Friss tagok még nem írhatnak erre az üzenetfolyamra." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Nincs jogosultségod erre a folyamra '{}' írni " +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Kérlek add meg a 'stream'-et." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Kérjük válassz: 'stream' vagy 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "A/az '{}' nevet már megkapta egy másik üzenetfolyam." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Érvénytelen üzenetfolyam név '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Ezen üzenetfolyam(ok) ({}) nem valós / valósak" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Nyilvános webes üzenetfolyamok nem engedélyezettek." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Ilyen azonosítós '{}' alapértelmezett üzenetfolyam nem létezik." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "A beszédfolyam neve nem lehet üres!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Üzenetfolyam neve túl hosszú (max: {} karakter)." - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "A téma nem lehet üres!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Ennél az üzenetfolyamnál nem érhetők el a feliratkozók adatai." -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Privát üzenetfolyamnál nem érhetők el a feliratkozók adatai." +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} nem boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} nem dátum" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} nem dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} nem float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} túl kicsi" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} nem integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} túl nagy" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} nem lista" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Érvénytelen {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} túl hosszú (korlátozva {max_length} karakter hosszúságban)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} nem string" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "A feltöltéseddel a szervezeted túllépné a rendelkezésre álló keretét." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Kép dekódolása sikertelen; biztosan képet töltöttél fel?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "A kép mérete meghaladja a beállított korlátokat." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Az animáció sérült." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Ismeretlen animáció fájltípus." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Érvénytelen felhasználói csoport" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "A név túl hosszú!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "A név túl rövid!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Érvénytelen karakter a névben!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Érvénytelen formátum!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "A név már használatban van!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Hibás név vagy felhasználói név" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Érvénytelen integráció '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Hiányzó konfigurációs parameterek: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Érvénytelen {} megadott érték {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Érvénytelen konfigurációs adat!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Érvénytelen robot típus" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Érvénytelen interfész típus" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Érvénytelen felhasználó ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Nincs ilyen robot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Nincs ilyen felhasználó" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "A felhasználó letiltásra került" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} nem string" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} nem lehet üres." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Érvénytelen {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} túl hosszú (korlátozva {max_length} karakter hosszúságban)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} hossza {length}, ami érvénytelen; {target_length} hosszúnak kellene lennie" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} nem dátum" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} nem integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} túl kicsi" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} túl nagy" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} nem float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} nem boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} nem érvényes hex color code" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} nem lista" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} pontosan {length} dolgot tartalmazzon" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} nem dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} kulcs hiányzik a {var_name} változóból" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Váratlan értékek: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} nem allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} hibás)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} nem URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' nem lehet üres." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' nem érvényes választási lehetőség '{field_name}' számára" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} nem string vagy integer lista" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} nem string vagy integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} hiányzik" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Hiányzó HTTP esemény fejléc '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "A {} webhook időformátumot millisecond-ban várja." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "A zcommandban kezdő per jelnek kell szerepelnie." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Helytelen utasítás: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF hiba: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "üzenetfolyam eseményei" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Érvénytelen karakter a hangulatjel nevében." -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Hibás regex: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Ismeretlen regex hiba" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Érvénytelen karakterek a pygments nyelvben" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Adminok, moderátorok, tagok és vendégek" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Adminok, moderátorok, és tagok" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Adminok és moderátorok" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Csak adminisztrátorok" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Senki" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Szervezet tulajdonosa" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Szervezet adminisztrátora" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderátor" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Tag" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Vendég" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Nyilvános a weben" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Nyilvános" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Privát, közös korábbi üzenetek" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Privát, védett korábbi üzenetek" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Minden tagja az üzenetfolyamnak posztolhat" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Csak a szervezeti adminisztrátorok üzenhetnek" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Csak szervezeti adminisztrátorok és moderátorok üzenhetnek" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Csak a szervezeti teljes jogú tagjai üzenhetnek" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode hangulatjel" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Egyedi hangulatjel" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip extra hangulatjel" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "A/z {} azonosítójú felhasználó letiltásra került." +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Felhasználó ID {} mögött egy robot áll" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Opciók listája" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Személy kiválasztó" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Rövid szöveg" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Hosszú szöveg" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Dátum kiválasztó" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Külső fiók" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Ismeretlen IP cím" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "egy ismeretlen operációs rendszer" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Egy ismeretlen böngésző" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Hiányzó 'queue_id' paraméter" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Hiányzó 'last_event_id' paraméter" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Egy eseményt ami újabb, mint {event_id} már töröltek!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Az esemény {event_id} ebben a sorban nem található" @@ -4759,89 +4940,123 @@ msgstr "Ilyen címkével már létezik mező." msgid "Default custom field cannot be updated." msgstr "Alapértelmezett egyedi mező frissítése sikertelen." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Éles környezetben hozzáférhetetlen endpoint" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend nincs engedélyezve." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Ismeretlen hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Legalább egy e-mail cím megadása kötelező." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Nincs ilyen id-vel ellátott üzenetfolyam: {}. Nem küldtünk ki semmi meghívót." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Nincs ilyen meghívó." -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Az üzenet szerkesztési előzmények elérése ebben a szervezetben le van tiltva." -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Az üzenet törléséhez nincs jogosultságod" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Az üzenettörlésre rendelkezésre álló időkorlát letelt." -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Törölt üzenet" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Túl sok üzenetet akarsz látni (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Nincs ilyen téma '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Hiányzó küldő" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Tükrözés nem engedélyezett a címzett felhasználó azonosítókkal" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Érvénytelen tükrözött üzenet" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr tükrözés nem engedélyezett ebben a szervezetben." @@ -4857,27 +5072,28 @@ msgstr "Némított felhasználó" msgid "User is not muted" msgstr "Felhasználó nincs lenémítva" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "A jelenlét nincs követve robotok esetén." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Jelenléti adat hiányzik {user_id_or_email} felhasználónál" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Az ügyfél nem adott meg semmi új értéket" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Az ügyfél kénytelen lesz megadni egy emoji_name ha meghatároztak egy emoji_code vagy reaction_type -ot." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Érvénytelen állapot: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4893,37 +5109,37 @@ msgid "" "emoji_code" msgstr "Legalább egyet meg kell adni ezek közül: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Ez a reakció nem létezik." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Érvénytelen nyelv '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Valamilyen authentikációs lehetőséget meg kell adni." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Érvénytelen video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Érvénytelen giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Csak bemutató szerveződés lehet." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Érvénytelen domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4935,42 +5151,43 @@ msgstr "A/az {domain} már része a szervezetednek." msgid "No entry found for domain {domain}." msgstr "Nem találtunk a {domain} domain-re példát." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Pontosan egy fájlt tölts fel." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "A feltöltött fájl mérete meghaladja az engedett {} MiB-t" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Határtúllépés" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Kérjük próbálj kézi exportot kérni innen {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Érvénytelen adat export ID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Törölt export" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4978,7 +5195,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Pontosan egy ikont tölts fel." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier nem található." @@ -4986,107 +5203,100 @@ msgstr "Linkifier nem található." msgid "You must upload exactly one logo." msgstr "Pontosan egy logo feltöltésére van szükség." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Érvénytelen homokozó" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Felhasználó számára nem engedélyezett lekérdezések végrehajtása '{principal}' nevében" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Privát üzenetfolyamok nem tehetőek alapértelmezetté." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "A \"new_description\" vagy a \"new_group_name\"-et kell átadnod." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Érvényelen érték az \"op\"-ban. Használd az \"add\" vagy \"remove\" értékeket." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Alapértelemzett üzenetfolyamok nem alakíthatóak priváttá." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Az üzenetfolyamnak már ez a neve!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nincs teendő meghatározva. Legalább az \"add\" vagy a \"delete\" megadása szükséges." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} behívott a folyamba {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} behívott a következő folyamokba:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Üzenetfolyam ({stream_name}) nem elérhető." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Zephy tükröző felhasználókat csak privát üzenetfolyamokba lehet meghívni." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} létrehozta a következő folyamokat: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} létrehozta a következő folyamot {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "új folyamok" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Ismeretlen feliratkozás paraméter: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Nem vagy tagja ilyen azonosítós folyamnak {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Érvénytelen json a submessage számára" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Nincs jogosultságod a fálj megtekintéséhez.

" @@ -5102,97 +5312,108 @@ msgstr "A felhasználó letiltotta a gépelés mutatását üzenetfolyamokban" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Nincs ilyen fájl.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Érvénytelen token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Érvénytelen fájlnév" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "A feltöltéshez egy állományt kell megadni" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Egyszerre csak egy állomány tölthető fel" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nincs megadva új adat" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "A felhasználó {user_id} már tagja e csoportnak" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Ez a felhasználócsoport '{}' üres" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "A profilkép változtatások ebben a szervezetben le vannak tiltva." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Az email cím változtatás ebben a szervezetben le van tiltva." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Érvénytelen default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Érvénytelen értesítési hang '{}'" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "A Zulip jelszavad LDAP-ban kezelhető" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Hibás jelszó!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Túl sokat próbálkozol! Próbáld ismét {} mp múlva." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Az új jelszó túl gyenge!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Egyetlen avatar feltöltésére van szükség." @@ -5239,6 +5460,10 @@ msgstr "Érvénytelen beágyazott robot név." msgid "Username already in use" msgstr "A felhasználónév már foglalt" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5249,8 +5474,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Eldobható email címek használata ebben a szervezetben nem engedélyezett." #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "E-mail '{}' már foglalt" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5268,27 +5494,27 @@ msgstr "Érvénytelen Zoom session identifier" msgid "Invalid Zoom credentials" msgstr "Érvénytelen Zoom jogosultságok" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Nem sikerült Zoom hívást kezdeményezni" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton nincs beállítva." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Érvénytelen aláírás." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Hiba történt a BigBlueButton szerverhez való csatlakozás közben." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Hiba történt a BigBlueButton szerver authentikációja során." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton szerver váratlan hibát jelentett." @@ -5308,28 +5534,28 @@ msgstr "A Kerberos gyorsítótár érvénytelen" msgid "We were unable to set up mirroring for you" msgstr "Nem sikerült a mirror beállítása" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Érvénytelen payload adattartalom" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Ismeretlen webhook kérés" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "A téma nem lehet üres." -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Tartalom nem maradhat üres" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Deformálódott JSON input" @@ -5348,7 +5574,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5356,19 +5582,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Nem sikerült a Pivotal payload kezelése" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Hiba: channels_map_to_topics paraméter más, mint 0 vagy 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Üzenj a Slack által" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Ismeretlen WordPress webhook lépés: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5385,47 +5612,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Érvényesítsd a Zulip szervert érvényes API kulccsal" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Érvénytelen UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Érvénytelen token típus" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} nem érvényes hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Érvénytelen tulajdonság {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Váratlan adatrend." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Érvénytelen adat." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Kérj új jelszót." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Hiányzó id_token paraméter" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Érvénytelen OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Egyszerre nem használható a mobile_flow_otp és a desktop_flow_otp." diff --git a/locale/hu/translations.json b/locale/hu/translations.json index f0f1d778ce..65d194c9ff 100644 --- a/locale/hu/translations.json +++ b/locale/hu/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(rejtett)", "(no description)": "(nincs leírás)", "(no topic)": "(nincs téma)", + "(or )": "", "(you)": "(te)", "({message_retention_days} days)": "({message_retention_days} nap)", "/dark (Switch to the dark theme)": "/dark (Válts sötét hangulatra)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} nem iratkozott fel erre az üzenetfolyamra. Nem fog értesítést kapni, csak ha elvégzed a feliratkoztatást.", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "Iratkozz fel", - "Click here to learn about exporting private streams and messages.": "Kattints ide a privát üzenetfolyamok és üzenetek exportálásának megismeréséhez.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Válts csomagot, ha több helyre van szükséged.", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Figyelmeztető szó hozzáadása", "Add all users": "Minden felhasználó hozzáadása", "Add another user...": "Újabb felhasználó hozzáadása...", + "Add audio call": "", "Add code playground": "Kód játszótér hozzáadása", + "Add default streams": "", + "Add email": "", "Add emoji": "Hangulatjel hozzáadása", "Add emoji reaction": "Hangulatjeles reakció hozzáadása", "Add extra emoji for members of the {realm_name} organization.": "Extra hangulatjel hozzáadása a/az {realm_name} szervezet tagjai számára.", "Add global time": "Adj meg globálisan pontos időt", "Add linkifier": "Linkesítő hozzáadása", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Tag hozzáadása...", - "Add new default stream": "Alapértelmezett üzenetfolyam hozzáadása", "Add new user group": "", "Add one or more users": "Egy vagy több felhasználó hozzáadása", "Add option": "Opció hozzáadása", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Feladat hozzáadása", "Add video call": "Videohívás hozzáadása", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Sikeresen hozzáadva!", "Added successfully.": "", "Administrator": "Adminisztrátor", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Mindenki", "All direct messages": "", + "All groups": "", "All messages": "Minden üzenet", "All messages including muted streams": "Minden üzenet az elnémított üzenetfolyamokkal együtt", "All streams": "Minden üzenetfolyam", @@ -136,9 +142,11 @@ "Allow subdomains": "Aldomainek engedélyezése", "Allowed domains": "Engedélyezett domainek", "Allowed domains: {domains}": "Engedélyezett domainek: {domains}", + "Already members:": "", "Already not subscribed.": "Innen már leiratkoztál.", "Already subscribed to {stream}": "Már feliratkozott a/az {stream} csatornára", "Already subscribed users:": "Már feliratkozott felhasználók:", + "Already subscribed.": "", "Always": "Mindig", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Egy API kulcs a Zulip-fiók programozott elérésére használható. Az API kulcsod birtokában bárki képes olvasni az üzeneteidet, üzeneteket küldhet a nevedben, és más módokon is megszemélyesíthet téged a Zulip szolgáltatásban, ezért a kulcsot ugyanolyan gondosan kell őrizned, mint a jelszavad.
Hacsak a feladathoz nincs szükség közvetlen hozzáférést adni a saját fiókodhoz, a Zulip API eléréséhez elsősorban robotok létrehozását javasoljuk, amelyek a robotok saját fiókjának API kulcsát használják.", "An hour ago": "Egy órája", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Archív üzenetfolyam", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Létre szeretnéd hozni a/az \"\"{stream_name}\"\" üzenetfolyamot {count} feliratkozóval?", "Are you sure you want to deactivate this organization?": "Biztosan deaktiválni szeretnéd ezt a szervezetet?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Biztosan újraküldöd a meghívást részére?", "Are you sure you want to revoke the invitation to {email}?": "Biztosan visszavonod a meghívást {email}-tól/től?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Biztosan visszavonod a {referred_by} által létrehozott meghívó linket?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Biztosan törlöd az összes üzenet csillagozását itt: ? Ez a művelet nem visszavonható.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Biztosan törlöd az összes csillagozott üzenet csillagozását? Ez a művelet nem visszavonható.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "A profilkép változtatások ebben a szervezetben le vannak tiltva", "Avatar from Gravatar": "Avatar a Gravatar-ról", "Back to streams": "Vissza az üzenetfolyamokhoz", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Számlázás", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Robot típusa", "Bots": "Robotok", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "Fürkéssz üzenetfolyamokat", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Üzleti", "Busy": "Elfoglalt", "By deactivating your account, you will be logged out immediately.": "A fiókod deaktiválásával azonnal ki is fogunk jelentkeztetni.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Kattints ide a megjelenítéshez.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Kattins a szövegmezőn kívülre a mentéshez. Automatikusan értesítjük azokat, akik hozzáadásra vagy eltávolításra kerültek.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Katt a megtekintéshez vagy letöltéshez.", "Close": "Bezár", "Close modal": "Felhatalmazások bezárása", @@ -232,7 +248,7 @@ "Commuting": "Ingázom", "Compact": "", "Complete": "Kész", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Fejezd be a szerveződés profilt, hogy kitűnj vele, és leírd eme Zulip szerveződés célját.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Üzenet írása", "Compose your message here": "Itt írd meg az üzenetedet", "Compose your message here...": "Szerkeszd az üzeneted itt...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Hangulatjelek konvertálása elküldés előtt ( :) -ből 😃 lesz)", "Cookie Bot": "Süti robot", "Copied!": "Lemásolva!", + "Copy URL": "", "Copy address": "", "Copy and close": "Másolás és bezárás", "Copy code": "Kód másolása", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Egyedi", + "Custom URL": "", "Custom emoji": "Egyedi hangulatjel", "Custom language: {query}": "Egyedi nyelv: {query}", "Custom linkifier added!": "Egyedi linkesítő hozzáadva!", @@ -302,10 +320,12 @@ "Deactivated": "Letiltva", "Deactivated users": "Letiltott felhasználók", "December": "December", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Alapértelmezés: {language}. A 'text' használatával letiltható a kiemelés.", "Default language for code blocks": "", "Default streams": "Alapértelmezett üzenetfolyamok", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Alapértelmezett felhasználói beállítások", "Default view": "Alapértelmezett nézet", @@ -314,12 +334,14 @@ "Delete": "Törlés", "Delete alert word": "Figyelmeztető szó törlése", "Delete all drafts": "Minden piszkozat törlése", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Piszkozat törlése", "Delete file": "Fájl törlése", "Delete file?": "", + "Delete group": "", "Delete icon": "Ikon törlése", "Delete linkifier?": "", "Delete logo": "Logó törlése", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "A szervezet méretétől függően az exportálás pár másodperctől akár egy óráig is eltarthat.", "Deprecation notice": "Elavulási értesítés", "Description": "Leírás", + "Deselect draft": "", "Desktop": "Számítógép", "Desktop & mobile apps": "Asztali és mobil alkalmazások", "Desktop message notifications": "Asztali értesítések üzenetenként", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Üzenetformázás részletes leírása", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Letiltva", "Discard": "Elvetés", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Megjelenítési beállítások", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domain", "Don’t allow disposable email addresses": "Nem engedje meg az eldobható email címek használatát", "Download": "Letöltés", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "Linkfier-ek szerkesztése", "Edit message": "Üzenet szerkesztése", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Kiválasztott piszkozat szerkesztése", "Edit selected message or view source": "", "Edit status": "Jelenléti állapot szerkesztése", @@ -398,7 +423,6 @@ "Edit your last message": "Utolsó üzeneted szerkesztése", "Edit your profile": " A profilod szerkesztése", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Szerkesztve ({last_edit_timestr})", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Külső fiók típusa", "External link": "Külső hivatkozás", "Failed": "Sikertelen", + "Failed adding one or more streams.": "", "Failed to create video call.": "Nem sikerült létrehozni a videohívást.", "Failed to generate preview": "Nem sikerült az előnézet megjelenítése", "Failed to upload %'{file}'": "Nem sikerült feltölteni a/az %'{file}' állományt", @@ -485,11 +510,9 @@ "Filter exports": "Exportok szűrése", "Filter groups": "", "Filter invites": "Meghívók szűrése", - "Filter languages": "Nyelvek szűrése", "Filter linkifiers": "Linkesítők szűrése", "Filter members": "", "Filter muted users": "Némított felhasználók szűrése", - "Filter roles": "", "Filter streams": "Üzenetfolyamok szűrése", "Filter subscribers": "", "Filter topics": "Témák szűrése", @@ -500,6 +523,9 @@ "First message": "Első üzenet", "First time? Read our guidelines for creating and naming streams.": "Első alkalom? Olvasd el útmutatónkat az üzenetfolyamok létrehozásáról és elnevezéséről.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY elismerés", "GIPHY integration": "GIPHY integráció", "General": "Általános", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Meghívó link készítése", "Generate new API key": "Új API kulcs generálása", @@ -542,14 +569,18 @@ "High contrast mode": "Nagy kontrasztú mód", "Hint": "Tipp", "Hint (up to 80 characters)": "Tipp (max. 80 karakter)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Emberek", "Idle": "Tétlen", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Hanyagolt letiltott felhasználók:", "Image": "Kép", "In a meeting": "Egy megbeszélésen", "Inactive": "", "Inactive bots": "Inaktív robotok", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Az üzenet szövege megjelenhet az üzenetről értesítő mailekben", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "A bejövő webhookok csak küldeni tudnak üzeneteket.", "Initiate a search": "Keresés indítása", "Insert new line": "Új sor beszúrása", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrációk", "Interface": "Interfész", "Invalid URL": "Érvénytelen URL", @@ -581,6 +614,8 @@ "Inviting...": "Meghívás...", "Italic": "Dőlt", "January": "január", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Belépett", @@ -599,8 +634,10 @@ "Last 30 days": "Utolsó 30 nap", "Last 6 months": "Utolsó 6 hónap", "Last active": "Utolsó aktivitás", + "Last edited {last_edit_timestr}": "", "Last message": "Utolsó üzenet", "Last modified": "Utolsó módosítás", + "Last moved {last_edit_timestr}": "", "Learn more": "Tudj meg többet", "Learn more about mentions here.": "További információ az említésekről itt .", "Learn more about starring messages here.": "További információ az üzenetek csillagozásáról itt .", @@ -623,6 +660,7 @@ "Log out": "Kijelentkezés", "Looking for our integrations or API documentation?": "Az integrálás vagy az API leírását keresed?", "MOVED": "ELKÖLTÖZÖTT", + "Main menu": "", "Manage bot": "", "Manage streams": "Üzenetfolyamok kezelése", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Előfordulás helye", "Mentions": "Említések", - "Menu": "Menü", "Menus": "Menük", "Message #{stream_name}": "Üzenet #{stream_name}", "Message #{stream_name} > {topic_name}": "Üzenet #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Üzenet {recipient_names}", "Message {recipient_name} ({recipient_status})": "Üzenet {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Mobil", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Téma áthelyezése", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Folyamtag kell, hogy meghívjon; új tagok csak csatlakozás után láthatják az üzeneteket; nem admin felhasznlálók elől rejtve", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Folyamtag kell, hogy meghívjon; új tagok szabadon megtekinthetik az üzeneteket; nem admin felhasznlálók elől rejtve", + "Mute": "", "Mute stream": "Üzenetfolyam némítása", "Mute this user": "Felhasználó némítása", "Mute topic": "Téma némítása", @@ -734,38 +773,42 @@ "New password is too weak": "Az új jelszó túl gyenge", "New stream announcements": "", "New stream message": "Új üzenet az üzenetfolyamban", + "New stream notifications": "", "New task": "Új feladat", "New topic": "Új téma", "New user announcements": "", + "New user notifications": "", "Next message": "Következő üzenet", "Next unread direct message": "", "Next unread topic": "Következő olvasatlan téma", - "Next week": "Jövő héten", "No bots match your current filter.": "Nincs a szűrésnek megfelelő robot.", + "No conversations match your filters.": "", "No custom emoji.": "Nincsenek egyedi hangulatjelek.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nincs a szűrésnek megfelelő alapértelmezett üzenetfolyam.", "No description.": "Nincs leírás.", + "No drafts selected": "", "No drafts.": "Nincsenek piszkozatok.", "No exports.": "Nincsenek exportok.", "No invites match your current filter.": "Nincs a jelenlegi szűrésnek megfelelő meghívás.", "No language set": "Nincs beállított nyelv", "No linkifiers set.": "Nincs linkesítő beállítva.", + "No matching results": "", "No matching users.": "Nincs ilyen felhasználó.", "No one has read this message yet.": "", "No owner": "Nincs tulajdonos", "No playgrounds configured.": "Nincsenek játszóterek beállítva.", "No restrictions": "Korlátozások nélkül", "No scheduled messages.": "", - "No search results": "Nincs találat", "No search results.": "", "No stream subscriptions.": "Nem vagy tagja egy üzenetfolyamnak se", "No streams": "Nincsenek üzenetfolyamok", "No topics are marked as resolved.": "Egyik téma sincs lezárva.", - "No topics match your current filter.": "Nincsenek a szűrésnek megfelelő témák.", "No user group subscriptions.": "Nem vagy tagja egy felhasználócsoportnak se", "No user groups": "", "No user to subscribe.": "Nincs feliratható felhasználó.", "No users match your current filter.": "Nincs a szűrésnek megfelelő felhasználó.", + "No users to add.": "", "No, I'll catch up.": "Nem, felzárkózok.", "Nobody": "Senki", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "november", + "Numbered list": "", "October": "október", "Old password": "Régi jelszó", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Privát üzenetfolyamokhoz csak a tagok adhatnak hozzá felhasználókat.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Megnyitás", "Open message menu": "Üzenet menü megnyitása", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Nyomj a > jelre a témák listájához", "Prevent users from changing their avatar": "Profilkép változtatás tiltása", "Prevent users from changing their email address": "E-mail cím változtatás tiltása", @@ -869,6 +915,7 @@ "Previous message": "Előző üzenet", "Privacy": "Biztonság", "Privacy settings": "Biztonsági beállítások", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Privát, védett korábbi üzenetek", "Private, shared history": "Privát, közös korábbi üzenetek", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Robot újraaktíválása", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Elmentve piszkozatként", "Saved. Please reload for the change to take effect.": "Elmentve. Kérlek töltsd újra a változások életbe lépéséhez.", "Saving": "Mentés", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Nézd meg, hogyan állíthatod be az e-mail küldést.", "Select a stream": "", "Select a stream below or change topic name.": "Válassz egy üzenetfolyamot vagy változtasd meg a téma nevét.", - "Select date and time": "Válassz napot és időpontot", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Emoji kiválasztása", "Select language": "", + "Select stream": "", "Send": "Küldés", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Küldj összefoglaló levelet, ha távol vagyok", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "A feltöltött és linkelt képek előnézeti képének megjelenítése ", "Show starred message count": "Csillagozott üzenetek számának mutatása", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "API kulcsod megjelenítése/megváltoztatása", "Sign up": "Feliratkozás", "Silent mentions do not trigger notifications.": "A csendes említésekről nem küldünk értesítést.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Becsült heti forgalom alapján rendezve", "Sort by name": "Rendezés név szerint", "Sort by number of subscribers": "Feliratkozók szerint rendezve", + "Sort by unread message count": "", "Spoiler": "Előzetes", "Star": "Csillag", "Star selected message": "Kiválasztott üzenet csillagozása", @@ -1024,8 +1080,10 @@ "Subscribe": "Feliratkozás", "Subscribe them": "Iratkoztasd fel őket", "Subscribe to/unsubscribe from selected stream": "Feliratkozás/leiratkozás a kiválasztott üzenetfolyamra/-ról", + "Subscribe {full_name} to streams": "", "Subscribed": "Feliratkozva", "Subscribed streams": "Üzenetfolyamok, amelyekre feliratkoztál", + "Subscribed successfully!": "", "Subscriber count": "Feliratkozók száma", "Subscribers": "Feliratkozók", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Jelenleg nincsenek figyelt szavak.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Ez a Zulip szerver egy régi szoftverváltozatot használ és frissítést igényel.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Így néz ki egy Zulip értesítés.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Ezt az üzenetet elrejtettük, mert a feladót elnémítottad.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Időzóna", "Time's up!": "Itt az idő!", "Tip: You can also send \"/poll Some question\"": "Tipp: küldhetsz \"/poll Egy kérdés\" -t is", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Egy többsoros kódblokkban a szintaxis kiemeléshez add hozzá a nyelv első Pygments rövid nevét az első fordított aposztrófok után. Kódblokkot is készíthetsz, ha minden sort 4 szóközzel behúzva írsz.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Felhasználók meghívásához kérem növelje a licenszek számát vagy deaktiválja az inaktív felhasználókat .", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Ma", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Feliratkozás váltása", "Toggle the gear menu": "Fogaskerék menü kapcsolása", "Toggle topic mute": "Téma némításának kapcsolása", - "Tomorrow": "Holnap", "Tomorrow at {time}": "", "Topic": "Téma", "Topic muted": "Némított téma", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Kétfaktoros beléptetés", "Type": "Típus", + "URL": "", + "URL for your integration": "", "URL pattern": "URL minta", - "URL prefix": "URL előtag", "URL template": "", "USERS": "FELHASZNÁLÓK", "Uncheck all": "Kijelölések törlése", @@ -1139,6 +1197,7 @@ "Unmute this user": "Felhasználó némítás feloldása", "Unmute topic": "Téma némítás feloldása", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Üzenetfolyam felülre rögzítésének megszüntetése", "Unread": "Olvasatlan", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Piszkozatok", - "View edit history": "Szerkesztési történt megtekintése", + "View edit and move history": "", "View file": "Állomány megtekintése", "View in playground": "Megnyitás játszótéren", "View in {name}": "Megnyitás {name} -ban/ben", @@ -1227,9 +1286,10 @@ "Web-public": "Nyilvános a weben", "Wednesday": "szerda", "Week of {date}": "{date} hete", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Üdv újra! Érkezett {unread_msgs_count} olvasatlan üzeneted. Szeretnéd mindegyiket olvasottra állítani?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "A csoportos említések - mint pl. az @all - értesítési szempontból is említésként legyenek-e kezelve vagy sem.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Ki érheti el az üzenetfolyamot?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Ki hozhat létre és kezelhet felhasználói csoportokat", "Who can create private streams": "Ki kezdhet privát üzenetfolyamokat", "Who can create public streams": "Ki kezdhet nyílt üzenetfolyamokat", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Ki hozhat létre nyilvános internetes üzenetfolyamokat", "Who can delete their own messages": "Ki törölheti saját üzeneteit", - "Who can invite users to this organization": "Ki hívhat meg új felhasználókat", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Ki üzenhet az üzenetfolyamban?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Ki használhat @all/@everyone említéseket nagy üzenetfolyamokban", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Te és", "You and {display_reply_to}": "Te és {display_reply_to}", "You and {recipients}": "Te és {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Jelenleg nem vagy az üzenetfolyamra feliratkozva.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Egy régi Zulip asztali alkalmazást használsz, amely ismert biztonsági hibákkal rendelkezik.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Erre az üzenetfolyamra nem vagy feliratkozva, és még senki nem is beszélt erről!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Készíthetsz táblázatokat is ezzel a Markdown-szerű jelöléssel .", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Nincs engedélyed csoportos említések használatára ebben az üzenetfolyamban.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Ezt kapod", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": " elnémítva.", + "You have muted this topic": "", "You have no active bots.": "Nincsenek aktív robotjaid.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Nem némítottál el egyetlen felhasználót sem.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Még nincsenek feltöltött állományaid.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Még nem említett meg senki!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Szervezeti adminisztrátornak kell lenned, hogy témát hozhass létre feliratkozás nélkül.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Zephyr tükrözést kell működtetned az üzenet elküldéséhez!", "You searched for:": "Erre kerestél:", "You subscribed to stream ": "", "You type": "Azt írod", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Nem vagy feliratkozva erre az üzenetfolyamra. Nem kapsz értesítést, ha más felhasználók az üzenetedre válaszolnak.", "Your API key:": "Az API kulcsod:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "A Zulipnak e-mailt küld a felhasználók címének ellenőrzéséhez és értesítések esetén.", "Zulip needs your permission to enable desktop notifications.": "Engedélyezd Zulipnak, hogy asztali értesítéseket küldjön.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "A Zulip fordításaink szuper önkéntes fordítói közösségünk hozzájárulásaként születnek. Ha szeretnél segíteni, nézd meg a Zulip fordítási útmutatónkat.", "[Configure]": "[Beállítás]", - "[Disable]": "[Letiltás]", - "[More…]": "[Több…]", "[Quoting…]": "[idézve…]", - "[Unset]": "[Kikapcsolva]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "és {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "béta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1 órán belül", - "in 20 minutes": "20 percen belül", - "in 3 hours": "3 órán belül", "invisible mode off": "", "leafy green vegetable": "zöld színű zöldség levéllel", "marketing": "marketing", "more conversations": "", "more topics": "további témák", - "or": "vagy", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} nappal ezelőtt", "{full_name} is typing…": "{full_name} gépel...", "{hours} hours ago": "{hours} órája", - "{items_selected} selected": "{items_selected} kiválasztva", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "még {minutes} percig szerkeszthető", "{minutes} minutes ago": "{minutes} perce", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "még {seconds} másodpercig szerkeszthető", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [mondta] ({link_to_message}):", "{username} reacted with {emoji_name}": "{username} {emoji_name} hangulatjellel reagált" diff --git a/locale/id/LC_MESSAGES/django.po b/locale/id/LC_MESSAGES/django.po index 47b52c778a..99938e05e3 100644 --- a/locale/id/LC_MESSAGES/django.po +++ b/locale/id/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Tim Abbott , 2018\n" "Language-Team: Indonesian (http://app.transifex.com/zulip/zulip/language/id/)\n" @@ -21,46 +21,47 @@ msgstr "" "Language: id\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Data analisis tidak tersedia. Mohon hubungi administrator server anda." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -121,29 +122,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -175,7 +178,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -191,14 +194,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -210,7 +213,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -260,7 +263,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Eror internal server" @@ -562,9 +565,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -582,9 +585,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -594,9 +597,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -859,51 +862,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Terima kasih telah mendaftar!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Masih tidak ada email? Kami dapat mengirimkan kembali." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Untuk berjaga-jaga, lihat ke folder Spam anda." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Coba sekarang." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Pesan" @@ -1151,6 +1154,159 @@ msgstr "Pengguna biasa" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Selamat datang di Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1158,6 +1314,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1171,22 +1360,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1241,17 +1417,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1356,225 +1521,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Selamat datang di Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Pergi ke Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1659,14 +1605,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1698,21 +1644,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1720,21 +1690,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1777,29 +1747,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1962,6 +1932,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1990,6 +1968,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Pergi ke Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2378,7 +2428,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Robot interaktif" @@ -2878,292 +2928,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Beberapa email tidak tervalidasi, jadi kami tidak mengirimkan undangan apapun." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Kami tidak dapat mengundang siapapun." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Beberapa dari alamat itu telah menggunakan Zulip, jadi kami tidak mengirimkan mereka undangan. Namun kami mengirimkan undangan kepada orang-orang yang lain!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Tidak ada yang dapat diubah" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Organisasi Anda telah menonaktifkan penyuntingan pesan" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Anda tidak memiliki ijin untuk mengedit pesan ini" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Pesan invalid" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Tidak dapat menampilkan pesan." -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reaksi sudah ada." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3177,8 +3230,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3197,18 +3250,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3217,38 +3284,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3258,56 +3325,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "API ini tidak tersedia untuk robot yang menerapkan incoming webhook." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Akun ini tidak terasosiasi dengan subdomain ini" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Endpoint ini tidak menerima request dari robot." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Tidak cukup izin" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Endpoint ini memerlukan autentikasi sederhana HTTP." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Header otorisasi invalid untuk auth sederhana" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Robot webhook hanya dapat mengakses webhook" @@ -3322,94 +3392,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomain harus memiliki panjang lebih dari atau sama dengan 3." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomain tidak dapat dimulai atau diakhiri dengan '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomain hanya dapat mengandung huruf kecil, angka, dan '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomain tidak tersedia. Silakan pilih yang lain." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Mohon gunakan email asli Anda." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Organisasi yang Anda coba gabung menggunakan {email} tidak tersedia." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Silakan meminta sebuah undangan untuk {email} dari pengurus organisasi." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Alamat email Anda, {email}, tidak termasuk dalam salah satu domain yang diperbolehkan untuk mendaftar akun pada organisasi ini." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Tolong masukkan paling banyak 10 email." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3474,31 +3550,31 @@ msgstr "Subdomain tidak dapat dimulai atau diakhiri dengan '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domain hanya dapat menggunakan huruf, angka, '.' dan '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3531,166 +3607,166 @@ msgstr "Telah mempunyai akun." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nama emoji invalid." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Jenis emoji invalid" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Tidak dapat mengalokasi antrian event" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Belum masuk: Autentikasi API atau sesi pengguna dibutuhkan" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Penggunaan API melewati batas" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Kesalahan bentuk JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "API key tidak valid" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Subdomain tidak valid" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Akses ditolak" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3698,6 +3774,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reaksi sudah ada." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reaksi tidak ada." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3739,7 +3823,7 @@ msgid "Settings" msgstr "Pengaturan" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3752,264 +3836,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Kerangka integrasi" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integrasi berkelanjutan" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Layanan customer" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Penyebaran" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Komunikasi" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finansial" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Lain-lain" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Manajemen proyek" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produktivitas" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Kontrol versi" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Pesan harus tidak boleh kosong" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Pesan harus tidak mengandung null bytes" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operator batas invalid: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4024,669 +4116,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token tidak ada" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Pengguna tidak berotoritas untuk melakukan perintah ini." -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Tidak ada argumen '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Nilai tidak baik untuk '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grup pengguna invalid" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nama terlalu panjang!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nama terlalu pendek!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Karakter pada nama invalid!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nama atau username tidak dibenarkan" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tipe robot invalid" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipe antarmuka invalid" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Tidak ada robot demikian" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Tidak ada pengguna tersebut" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Karakter pada nama emoji invalid" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Publik" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji khusus" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Ekstra emoji Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Tidak ada argumen 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Tidak ada argumen 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4754,66 +4935,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Anda harus menentukan minimal satu alamat email." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Tidak ada undangan tersebut" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Riwayat penyuntingan pesan dinonaktifkan di organisasi ini" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4821,22 +5035,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Pengirim tidak ada" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4852,26 +5067,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4888,37 +5104,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reaksi tidak ada." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Setidaknya satu metode autentikasi harus diaktifkan" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Domain invalid: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4930,42 +5146,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Anda harus mengunggah tepat satu file." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4973,7 +5190,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Anda harus mengunggah tepat satu ikon." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4981,107 +5198,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Pengguna tidak berotoritas untuk mengeksekusi perintah mewakili '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Siaran sudah mempunyai nama demikian!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Tidak ada yang dapat dilakukan. Spesifikasikan setidaknya satu dari 'tambah' atau 'hapus'." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5097,97 +5307,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

File tidak ditemukan.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Anda hanya dapat mengunggah file satu per satu" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Tidak ada data baru diberikan" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Kata sandi salah!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Anda harus mengunggah tepat satu avatar." @@ -5234,6 +5455,10 @@ msgstr "" msgid "Username already in use" msgstr "Nama pengguna sudah digunakan" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5244,7 +5469,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5263,27 +5489,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5303,28 +5529,28 @@ msgstr "Cache Kerberos invalid" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Topik tidak boleh kosong" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Konten tidak boleh kosong" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5343,7 +5569,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5351,19 +5577,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5380,47 +5607,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Tipe token invalid" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP tidak valid" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/id/translations.json b/locale/id/translations.json index d359650947..442f2a6afb 100644 --- a/locale/id/translations.json +++ b/locale/id/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(tidak ada topik)", + "(or )": "", "(you)": "(Anda)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Tambah kata peringatan", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Tambah emoji", "Add emoji reaction": "Tambah reaksi emoji", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Tambah stream standar baru", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "Tambah panggilan video", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Berhasil ditambahkan!", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Semua", "All direct messages": "", + "All groups": "", "All messages": "Semua pesan", "All messages including muted streams": "", "All streams": "Semua stream", @@ -136,9 +142,11 @@ "Allow subdomains": "Izinkan subdomain", "Allowed domains": "Domain yang diizinkan", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Tipe Bot", "Bots": "Bot", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "Dengan menonaktifkan akun anda, anda akan keluar dengan segera.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Tutup", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "Lengkap", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "Susun pesan Anda disini...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "Robot Cookie", "Copied!": "Disalin!", + "Copy URL": "", "Copy address": "", "Copy and close": "Salin dan tutup", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "Emoji khusus", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "Deaktivasi pengguna", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Stream standar", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Delete", "Delete alert word": "Hapus kata peringatan", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Hapus konsep", "Delete file": "Hapus file", "Delete file?": "", + "Delete group": "", "Delete icon": "Hapus ikon", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "Deskripsi", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "Aplikasi desktop & mobile", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Dinonaktifkan", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Pengaturan tampilan", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domain", "Don’t allow disposable email addresses": "", "Download": "Unduh", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Edit pesan", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Edit konsep terpilih", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Edit pesan terakhir anda", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "Gagal", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Saring stream", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Pesan pertama", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "Bangkitkan API key baru", @@ -542,14 +569,18 @@ "High contrast mode": "Mode kontras tinggi", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Manusia", "Idle": "Diam", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Gambar", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Memulai pencarian", "Insert new line": "Sisipkan baris baru", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrasi", "Interface": "", "Invalid URL": "URL tidak valid", @@ -581,6 +614,8 @@ "Inviting...": "Mengundang...", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "Aktif terakhir kali", + "Last edited {last_edit_timestr}": "", "Last message": "Pesan terakhir", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Keluar", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Kelola stream", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Disebut", - "Menu": "Menu", "Menus": "Menu", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Senyapkan stream", "Mute this user": "", "Mute topic": "Senyapkan topik", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "Pesan stream baru", + "New stream notifications": "", "New task": "", "New topic": "Topik baru", "New user announcements": "", + "New user notifications": "", "Next message": "Pesan selanjutnya", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Tidak, saya akan menyusul.", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Buka", "Open message menu": "Buka menu pesan", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "Pesan sebelumnya", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Tersimpan sebagai arsip", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Kirim", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Mendaftar", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "Bintangi pesan terpilih", @@ -1024,8 +1080,10 @@ "Subscribe": "Langganan", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Berlangganan/tidak berlangganan pada stream terpilih", + "Subscribe {full_name} to streams": "", "Subscribed": "Berlangganan", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "Pelanggan", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Hari ini", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Alihkan menu gerigi", "Toggle topic mute": "Alihkan pendiaman topik", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "Topik", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "PENGGUNA", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Nyalakan topik", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "Belum dibaca", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Lihat konsep", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Anda dan", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Anda tidak berlangganan ke stream ini dan belum ada seorangpun yang membicarakan tentangnya!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Anda mendapat", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Anda belum menyebut siapapun!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "Anda mengetik", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/it/LC_MESSAGES/django.po b/locale/it/LC_MESSAGES/django.po index bc9e6a8995..3b7f61d9ee 100644 --- a/locale/it/LC_MESSAGES/django.po +++ b/locale/it/LC_MESSAGES/django.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Andrea, 2020-2023\n" "Language-Team: Italian (http://app.transifex.com/zulip/zulip/language/it/)\n" @@ -27,46 +27,47 @@ msgstr "" "Language: it\n" "Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Non permesso agli utenti ospiti" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organizzazione non valida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Canali pubblici" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Canali privati" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Messaggi diretti" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Messaggi diretti di gruppo" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Nome grafico sconosciuto: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "L'ora di inizio è successiva all'ora di fine. Inizio: {start}, Fine: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Nessun dato analitico disponibile. Si prega di contattare l'amministratore del server." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parametri non validi" @@ -127,29 +128,31 @@ msgid "" msgstr "La tua organizzazione non ha abbastanza licenze Zulip inutilizzate per invitare {num_invites} utenti." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Devi fatturare per almeno {} utenti." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Le fatture con più di {} licenze non possono essere elaborate da questa pagina. Per completare l'aggiornamento, contatta {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Qualcosa è andato storto. Per favore contatta {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Qualcosa è andato storto. Si prega di ricaricare la pagina." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Qualcosa è andato storto. Per favore attendi qualche secondo e riprova." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -181,7 +184,7 @@ msgstr "Impossibile aggiornare il piano. Il piano è scaduto e sostituito con un msgid "Unable to update the plan. The plan has ended." msgstr "Impossibile aggiornare il piano. Il piano è terminato." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -197,14 +200,14 @@ msgstr "Il tuo piano è già su licenze {licenses} nel periodo di fatturazione c msgid "You cannot decrease the licenses in the current billing period." msgstr "Non è possibile ridurre le licenze nel periodo di fatturazione corrente." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Il tuo piano è già programmato per il rinnovo con licenze {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Niente da cambiare." @@ -216,7 +219,7 @@ msgstr "Nessun cliente per questa organizzazione!" msgid "Session not found" msgstr "Sessione non trovata" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Deve essere un responsabile della fatturazione o un proprietario dell'organizzazione" @@ -266,7 +269,7 @@ msgid "" msgstr "\n Se questo errore è imprevisto, puoi\n contattare il supporto.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Internal server error" @@ -568,9 +571,9 @@ msgstr "Stato di fatturazione" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -588,9 +591,9 @@ msgstr "Visualizza i prezzi" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Zulip on promise" @@ -600,9 +603,9 @@ msgstr "Zulip on promise" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Richiedi sponsorizzazione" @@ -865,51 +868,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Iscriviti con %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Conferma il tuo indirizzo email" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Grazie per esserti iscritto!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Controlla la tua email (%(email)s) così possiamo iniziare." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Non ti è arrivata la mail? Possiamo rispedirtela." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Per ogni evenienza, dai un'occhiata alla tua cartella Spam." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Se questo messaggio non scompare, prova a ricaricare la pagina." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Impossibile connettersi a Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Gli aggiornamenti potrebbero essere ritardati." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Ritento a breve..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Prova adesso." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Messaggi" @@ -1157,6 +1160,159 @@ msgstr "Utenti normali" msgid "Digest" msgstr "Sommario" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Congratulazioni, hai creato una nuova organizzazione demoZulip. Nota\nche questa organizzazione verrà eliminata automaticamente entro 30 giorni. Saperne di più\nsulle organizzazioni dimostrative qui!" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Congratulazioni, hai creato una nuova organizzazione\n Zulip: %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Benvenuto in Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "Sei entrato a far parte dell'organizzazione Zulip . %(realm_name)s.\n " + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "Utilizzerai le seguenti informazioni per accedere alle app Web, mobile e desktop di Zulip:" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL Organizzazione: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Il tuo nome utente:: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Usa il tuo account LDAP per accedere" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "L'e-mail del tuo account: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Vai all'organizzazione" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "Se sei nuovo su Zulip, dai un'occhiata alla nostra Guida introduttiva!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "Abbiamo anche una guida per configurare la tua organizzazione." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s in Zulip: I dettagli della tua nuova organizzazione" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s in Zulip: I dettagli del tuo nuovo account" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "Congratulazioni, hai creato una nuova organizzazione demo Zulip. Tieni presente che questa organizzazione verrà eliminata automaticamente tra 30 giorni. Ulteriori informazioni sulle organizzazioni dimostrative qui:\n%(demo_organizations_help_link)s!" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Congratulazioni, hai creato una nuova organizzazione Zulip:\n%(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Sei entrato nell'organizzazione Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "Utilizzerai le seguenti informazioni per accedere alle app Zulip web, mobile e desktop (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "Se non conosci Zulip, dai un'occhiata alla nostra Guida introduttiva (%(getting_user_started_link)s)!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "Abbiamo anche una guida per configurare la tua organizzazione (%(getting_organization_started_link)s)." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "Domande? Contattaci a %(support_email)s — ci piacerebbe aiutarti!" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "In caso di domande, contattare gli amministratori di questo server Zulip all'indirizzo %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1164,6 +1320,39 @@ msgstr "Sommario" msgid "Hi," msgstr "Ciao," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Se non hai richiesto questo cambio, per favore contattaci immediatamente a %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Se non hai richiesto questo cambiamento, ti preghiamo di contattarci immediatamente a <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1177,23 +1366,10 @@ msgstr "Abbiamo ricevuto una richiesta di modifica dell'indirizzo email per l'ac msgid "Confirm email change" msgstr "Conferma la modifica dell'email" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Se non hai richiesto questo cambio, per favore contattaci immediatamente a %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verifica il tuo nuovo indirizzo email " - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Se non hai richiesto questo cambiamento, ti preghiamo di contattarci immediatamente a <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1247,17 +1423,6 @@ msgid "" "— we'd love to help!" msgstr "Hai domande o feedback da condividere? Contattaci a %(support_email)s— ci piacerebbe aiutarti!" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "In caso di domande, contattare gli amministratori di questo server Zulip all'indirizzo %(support_email)s." - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1362,225 +1527,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Il tuo indirizzo email %(email)s ha un account con queste organizzazioni Zulip hostate su %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Congratulazioni, hai creato una nuova organizzazione demoZulip. Nota\nche questa organizzazione verrà eliminata automaticamente entro 30 giorni. Saperne di più\nsulle organizzazioni dimostrative qui!" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Congratulazioni, hai creato una nuova organizzazione\n Zulip: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Benvenuto in Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "Sei entrato a far parte dell'organizzazione Zulip . %(realm_name)s.\n " - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "Utilizzerai le seguenti informazioni per accedere alle app Web, mobile e desktop di Zulip:" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL Organizzazione: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Il tuo nome utente:: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Usa il tuo account LDAP per accedere" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "L'e-mail del tuo account: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Vai all'organizzazione" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "Se sei nuovo su Zulip, dai un'occhiata alla nostra Guida introduttiva!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "Abbiamo anche una guida per configurare la tua organizzazione." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "Domande? Contattaci — ci piacerebbe aiutarti!" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s in Zulip: I dettagli della tua nuova organizzazione" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s in Zulip: I dettagli del tuo nuovo account" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "Congratulazioni, hai creato una nuova organizzazione demo Zulip. Tieni presente che questa organizzazione verrà eliminata automaticamente tra 30 giorni. Ulteriori informazioni sulle organizzazioni dimostrative qui:\n%(demo_organizations_help_link)s!" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Congratulazioni, hai creato una nuova organizzazione Zulip:\n%(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Sei entrato nell'organizzazione Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "Utilizzerai le seguenti informazioni per accedere alle app Zulip web, mobile e desktop (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "Se non conosci Zulip, dai un'occhiata alla nostra Guida introduttiva (%(getting_user_started_link)s)!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "Abbiamo anche una guida per configurare la tua organizzazione (%(getting_organization_started_link)s)." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "Domande? Contattaci a %(support_email)s — ci piacerebbe aiutarti!" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "Ecco alcuni suggerimenti per mantenere le tue conversazioni Zulip organizzate con argomenti" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "In Zulip, i canalideterminano chi riceve un messaggio. Gli argomenti ti dicono di cosa tratta il messaggio." - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "Usando gli argomenti, puoi leggere Zulip una conversazione alla volta. Vedrai ogni messaggio nel contesto, indipendentemente dal numero di discussioni in corso." - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "Canali e argomenti nell'app Zulip" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "Per dare il via a una nuova conversazione, scegli un canale e inizia un nuovo argomento. In questo modo, il nuovo thread di conversazione non interromperà le discussioni in corso. Per un buon nome dell'argomento, pensa a finire la frase: “Ehi, possiamo parlare di...?”" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Esempi di brevi argomenti" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "Non preoccuparti di scegliere il nome perfetto per il tuo argomento. Se qualcosa è fuori posto, è facile spostare i messaggi, rinominare gli argomenti o persino spostare un argomento in un canale diverso." - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Vai a Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "Annulla l'iscrizione alle email di benvenuto per %(realm_name)s" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "Mantieni le tue conversazioni organizzate con argomenti" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "In Zulip, i canali determinano chi riceve un messaggio. Gli argomenti ti dicono di cosa tratta il messaggio." - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "Non preoccuparti di scegliere il nome perfetto per il tuo argomento. Se qualcosa è fuori posto, è facile spostare i messaggi (%(move_messages_link)s), rinominare gli argomenti (%(rename_topics_link)s) o persino spostare un argomento in un canale diverso (%(move_topic_to_different_stream_link)s)." - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1665,15 +1611,15 @@ msgstr "Questo invito scade tra due giorni. Se l'invito scade, dovrai chiedere a #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." -msgstr "In caso di domande, contattare gli amministratori di questo server Zulip all'indirizzo %(email)s." +" at %(email)s." +msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" -msgstr "Hai domande o feedback da condividere? Contattaci — ci piacerebbe aiutarti!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" +msgstr "" #: templates/zerver/emails/missed_message.html:17 #, python-format @@ -1704,21 +1650,45 @@ msgid "" msgstr "Stai ricevendo questo perché @%(mentioned_user_group_name)s è stato menzionato." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Stai ricevendo questo perché tutti sono stati menzionati in #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Lo stai ricevendo perché hai le notifiche e-mail abilitate per #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1726,21 +1696,21 @@ msgid "" "preferences." msgstr "Rispondi a questa mail direttamente, guardalo dentro in %(realm_name)s Zulip, o gestire le preferenze e-mail." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Visualizza o rispondi in %(realm_name)s Zulip, o gestisci le preferenze email." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Rispondi in %(realm_name)s Zulip, o gestisci le preferenze email." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1783,29 +1753,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nQuesta e-mail non include il contenuto del messaggio perché hai disabilitato il contenuto del messaggio che appare nelle notifiche e-mail.\nGuarda%(alert_notif_url)s per ulteriori dettagli.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Rispondi direttamente a questa email o visualizzala in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Visualizza o rispondi in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Rispondi in %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nNon rispondere a questa email. Questo server Zulip non è configurato per accettare email in arrivo. Aiuto:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Gestisci le preferenze email:" @@ -1968,6 +1938,14 @@ msgstr "Visualizza la guida Zulip per le organizzazioni non profit" msgid "View Zulip guide for communities" msgstr "Visualizza la guida Zulip per le comunità" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "Annulla l'iscrizione alle email di benvenuto per %(realm_name)s" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Guida Zulip per le imprese" @@ -1996,6 +1974,78 @@ msgstr "Guida Zulip per organizzazioni non profit" msgid "Zulip guide for communities" msgstr "Guida Zulip per le comunità" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "Ecco alcuni suggerimenti per mantenere le tue conversazioni Zulip organizzate con argomenti" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "In Zulip, i canalideterminano chi riceve un messaggio. Gli argomenti ti dicono di cosa tratta il messaggio." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "Usando gli argomenti, puoi leggere Zulip una conversazione alla volta. Vedrai ogni messaggio nel contesto, indipendentemente dal numero di discussioni in corso." + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "Canali e argomenti nell'app Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "Per dare il via a una nuova conversazione, scegli un canale e inizia un nuovo argomento. In questo modo, il nuovo thread di conversazione non interromperà le discussioni in corso. Per un buon nome dell'argomento, pensa a finire la frase: “Ehi, possiamo parlare di...?”" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Esempi di brevi argomenti" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "Non preoccuparti di scegliere il nome perfetto per il tuo argomento. Se qualcosa è fuori posto, è facile spostare i messaggi, rinominare gli argomenti o persino spostare un argomento in un canale diverso." + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Vai a Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "Mantieni le tue conversazioni organizzate con argomenti" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "In Zulip, i canali determinano chi riceve un messaggio. Gli argomenti ti dicono di cosa tratta il messaggio." + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "Non preoccuparti di scegliere il nome perfetto per il tuo argomento. Se qualcosa è fuori posto, è facile spostare i messaggi (%(move_messages_link)s), rinominare gli argomenti (%(rename_topics_link)s) o persino spostare un argomento in un canale diverso (%(move_topic_to_different_stream_link)s)." + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2384,7 +2434,7 @@ msgid "Incoming webhooks" msgstr "Webhook in arrivo" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Bot interattivi" @@ -2884,292 +2934,295 @@ msgid "" " " msgstr "\n Puoi usare anche l' app Desktop di Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "iscrizioni" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} si è appena registrato su Zulip. (totale: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} ha accettato il tuo invito ad unirti a Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Mappatura degli ordini non valida." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Id campo {id} non trovato." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Nome gruppo canale predefinito non valido '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Nome del gruppo del canale predefinito troppo lungo (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Nome del gruppo del canale '{}' contiene NULL (0x00) caratteri." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Gruppo di canale predefinito non valido {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' è un canale predefinito e non può essere aggiunto a '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Il gruppo di canale predefinito '{group_name}' esiste già" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Il canale '{stream_name}' è già presente nel gruppo del canale di default '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Il canale '{stream_name}' non è presente nel gruppo di canale predefinito '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Questo gruppo di canale predefinito si chiama già '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Il gruppo di canali predefinito '{}' esiste già" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Per proteggere gli utenti, Zulip limita il numero di inviti che puoi inviare in un giorno. Poiché hai raggiunto il limite, non sono stati inviati inviti." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Il tuo account è troppo recente per poter spedire inviti per questa organizzazione. Chiedi ad un amministratore, o a un utente più anziano." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Alcune email non sono valide, quindi non abbiamo inviato nessun invito." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Non siamo stati in grado di invitare nessuno." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Alcuni di questi indirizzi stanno già utilizzando Zulip, quindi non possiamo inviare l'invito. Abbiamo inviato inviti a tutti gli altri! " -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Niente da cambiare" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "I messaggi diretti non possono essere spostati nei canali." -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "I messaggi diretti non possono avere argomenti." -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Propagate_mode non valida senza modifica dell'argomento" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Impossibile modificare il contenuto del messaggio durante la modifica del canale" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "I widget non possono essere modificati." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} ha contrassegnato questo argomento come risolto." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} ha contrassegnato questo argomento come non risolto." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Questo argomento è stato spostato in {new_location} da {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Un messaggio è stato spostato da questo argomento a {new_location} da {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} messaggi sono stati spostati da questo argomento a {new_location} da {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Questo argomento è stato spostato qui da {old_location} da {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "[Un messaggio]({message_link}) è stato spostato qui da {old_location} da {user}." -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} messaggi sono stati spostati qui da {old_location} da {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "La tua organizzazione ha disattivato la modifica dei messaggi" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Non hai il permesso di modificare questo messaggio" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Il tempo massimo per editare il messaggio è trascorso" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "Il limite di tempo per modificare l'argomento di questo messaggio è scaduto." -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Non sei autorizzato a utilizzare le menzioni con caratteri jolly in questo canale." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Non hai il permesso di spostare questo messaggio" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Non disponi dell'autorizzazione per spostare questo messaggio a causa del mancato accesso a questo canale" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "Il limite di tempo per la modifica del messaggio in questo canale messaggio è scaduto" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Flag non valido: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Flag non editabile: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Operazione di flag di messaggio non valida: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Messaggio(i) non valido" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Impossibile rilasciare il messaggio" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Previsto esattamente un canale" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Tipo di dato non valido per il canale" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Tipo di dato non valido per i destinatari" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Gli elenchi dei destinatari possono contenere e-mail o ID , ma non entrambi." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Il tuo bot {bot_identity} ha provato ad inviare un messaggio al canale ID {stream_id}, ma non c'è un canale con questo ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Il tuo bot {bot_identity} ha provato ad inviare un messaggio al canale {stream_name}, ma il canale non esiste. Clicca [here]({new_stream_link}) per crearlo." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Il tuo bot {bot_identity} ha provato ad inviare un messaggio al canale {stream_name}. Il canale esiste ma non ha iscritti." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "I messaggi diretti sono disattivati in questa organizzazione." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Gli argomenti sono obbligatori in questa organizzazione" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widget: il programmatore API ha inviato contenuto JSON non valido" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "La reazione esiste già" - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Esiste già un'emoji personalizzata con questo nome." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "Tipo di dati non valido per l'ID canale" @@ -3183,8 +3236,8 @@ msgid "Scheduled message was already sent" msgstr "Il messaggio programmato è già stato inviato" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "L'orario di consegna programmato deve essere nel futuro." @@ -3203,18 +3256,32 @@ msgstr "Il messaggio pianificato per le ore {delivery_datetime} non è stato inv msgid "[View scheduled messages](#scheduled)" msgstr "[Vedi messaggi pianificati](#scheduled)" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "Il canale è già disattivato" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} ha modificato le [autorizzazioni di accesso](/help/stream-permissions) per questo canale da **{old_policy}** a **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3223,38 +3290,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} ha modificato le [autorizzazioni di pubblicazione](/help/stream-sending-policy) per questo canale:\n\n* **Vecchie autorizzazioni**: {old_policy}.\n* **Nuove autorizzazioni**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} ha rinominato il canale {old_stream_name} in {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Nessuna descrizione." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} ha cambiato la descrizione per questo canale." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Vecchia descrizione" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Nuova descrizione" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Per sempre" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "I messaggi in questo canale ora verranno conservati per sempre." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3264,56 +3331,59 @@ msgid "" "{summary_line}" msgstr "{user} ha modificato il [periodo di conservazione del messaggio](/help/message-retention-policy) per questo canale:\n* **Vecchio periodo di conservazione**: {old_retention_period}\n* **Nuovo periodo di conservazione**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Non puoi allegare un sotto messaggio a questo messaggio." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "User ID {} non valido" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Gruppo utenti '{}' esiste già." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Questa API non è disponibile per i webhook bot in arrivo." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "L'Account non è associato con questo sottodominio" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "L'endpoint non accetta richieste bot." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Devi essere un amministratore del server" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permessi insufficienti" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "L'endpoint richiede HTTP basic authentication." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Header invalido di autorizzazione per l'autenticazione di base" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Authorization header mancante per l'autenticazione di base " -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "I bot Webhook possono accedere solo ai webhook" @@ -3328,95 +3398,101 @@ msgstr "Il tuo account {username} è stato disattivato. Contatta l'amministrator msgid "The password is too weak." msgstr "La password è troppo debole." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Il sottodominio deve avere una lunghezza minima di 3 o maggiore." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Il sottodominio non può iniziare o finire con '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Il sottodominio può solo avere lettere minuscole, numeri, e '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Sottodominio non disponibile. Per favore sceglierne uno diverso." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Per favore usa un'email reale." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "L'organizzazione in cui stai provando a entrare usando {email} non esiste." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Per favore richiedi un invito per {email} dall'amministratore dell'organizzazione." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Il tuo indirizzo email, {email}, non appartiene a uno dei domini che sono autorizzati a registrarsi in questa organizzazione." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Gli indirizzi email contenenti + non sono ammessi in questa organizzazione." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "I nuovi membri non possono unirsi a questa organizzazione perché tutte le licenze Zulip sono in uso. Contatta la persona che ti ha invitato e chiedile di aumentare il numero di licenze, quindi riprova." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nuova password" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Conferma nuova password" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Stai facendo troppi tentativi di accesso. Riprova tra {} secondi o contatta l'amministratore dell'organizzazione per assistenza." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "La tua password è stata disabilitata perché troppo debole. Reimposta la password per crearne una nuova." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "Suggerimento: puoi inserire più indirizzi email separati da virgole." -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Si prega di inserire al massimo 10 e-mail." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Non siamo riusciti a trovare questa l'organizzazione Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Email non valida '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3480,31 +3556,31 @@ msgstr "I sottodomini non posso iniziare o finire con il '-'" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Il dominio può contenere solo lettere, numeri, '.' e '-'s." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Il timestamp non deve essere negativo." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "L'argomento non deve contenere byte nulli" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "È necessario specificare esattamente 1 ID canale per i messaggi del canale" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "L'utente ha disabilitato la sincronizzazione delle bozze." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "La bozza non esiste" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Apri Zulip per vedere il contenuto dello spoiler" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Notifiche Zulip" @@ -3537,166 +3613,166 @@ msgstr "Hai già un account." msgid "Account has been deactivated." msgstr "L'account è stato disattivato." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Emoji '{}' non esiste" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personalizzata non valida." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nome emoji personalizzato non valido." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Questa emoji personalizzata è stata disattivata." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Codice emoji non valido." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nome emoji non valido." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Tipo di emoji non valido." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Deve essere un amministratore dell''organizzazione o un autore di emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "I nomi delle emoji devono terminare con una lettera o una cifra." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "I nomi delle emoji devono contenere solo lettere inglesi minuscole, cifre, spazi, trattini e caratteri di sottolineatura." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Manca il nome del Emoji" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Impossibile allocare la coda degli eventi" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Non loggato in: autenticazione API o sessione utente richiesta" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Il canale '{stream}' non esiste" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Canale con ID '{stream_id}' non esiste" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "proprietario organizzazione" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "utente" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Impossibile disattivare l'unica {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Dichiarazione include Markdown non valida: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "L'utilizzo dell'API ha superato il limite di velocità" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON malformato" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Devi essere un membro dell'organizzazione" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Deve essere un amministratore dell'organizzazione" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Deve essere un proprietario dell'organizzazione" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Il nome utente o la password sono errati" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "L'account è disattivato" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "L'organizzazione è stata disattivata" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "La registrazione del servizio di notifica push mobile per il tuo server è stata disattivata" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "L'autenticazione della password è disabilitata in questa organizzazione" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "La tua password è stata disabilitata e deve essere reimpostata" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Chiave API invalida" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Chiave API non valida" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "L'evento '{event_type}' non è attualmente supportato dal webhook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Impossibile analizzare la richiesta: {webhook_name} ha generato questo evento?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Sotto dominio non valido" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Accesso negato" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3704,6 +3780,14 @@ msgid "" "messages in this topic." msgstr "Hai solo il permesso di spostare i {total_messages_allowed_to_move}/{total_messages_in_topic} messaggi più recenti in questo argomento." +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "La reazione esiste già" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "La reazione non esiste" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Username di Twitter" @@ -3745,8 +3829,8 @@ msgid "Settings" msgstr "Impostazioni" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Vai a Impostazioni per configurare le notifiche e le impostazioni di visualizzazione." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3758,264 +3842,272 @@ msgid "" "and give it a go!" msgstr "Premi qui per iniziare una nuova conversazione. Seleziona un argomento (2-3 parole se possibile), e inizia!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Frameworks di integrazione" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integrazione continua" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Supporto clienti" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Distribuzione" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Intrattenimento" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Comunicazione" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finanziario" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Risorse umane" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Varie" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Monitoraggio" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gestione del progetto" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produttività" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Controlla versione" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Il messaggio non può essere vuoto" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Il messaggio non deve contenere byte null" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operatore {} non supportato." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operatore raggruppato non valido: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Argomento 'anchor' mancante." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Anchor non valido" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "Se non conosci Zulip, dai un'occhiata alla nostra [Usare Zulip per una guida di classe]({getting_started_url})!" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Se non conosci Zulip, dai un'occhiata alla nostra [Guida introduttiva]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "Abbiamo anche una guida per [Configurare Zulip per una classe]({organization_setup_url})." -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "Abbiamo anche una guida per [Configurare la tua organizzazione]({organization_setup_url})." -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "Tieni presente che questa è un'[organizzazione demo]({demo_organization_help_url}) e verrà **eliminata automaticamente** tra 30 giorni." -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Ciao, e benvenuto in Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "Questo è un mio messaggio diretto, Welcome Bot." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Posso anche aiutarti a prepararti! Basta fare clic in un punto qualsiasi di questo messaggio o premere 'r' per rispondere." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Ecco alcuni messaggi che comprendo:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "Puoi [scaricare](/apps/) le [app per dispositivi mobili e desktop](/apps/). Zulip funziona alla grande anche in un browser." -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Vai a [Impostazioni profilo](#impostazioni/profilo) per aggiungere una [immagine del profilo](/help/change-your-profile-picture) e modificare le tue [informazioni profilo](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Vai a [Impostazioni display](#settings/display-settings) per [passare tra i temi chiari e scuri](/help/dark-theme), [scegli il tuo tema emoji preferito](/help/emoji-and-emoticon# change-your-emoji-set), [cambia la tua lingua](/help/change-your-language) e apporta altre modifiche alla tua esperienza con Zulip." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "In Zulip, i canali [determinano chi riceve un messaggio](/help/streams-and-topics). Sono simili ai canali di altre app di chat." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Sfoglia e iscriviti ai canali](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "In Zulip, gli argomenti [ti dicono di cosa tratta un messaggio](/help/streams-and-topics). Sono oggetti leggeri, molto simili alla riga dell'oggetto di un'e-mail." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "Dai un'occhiata a [Conversazioni recenti](#recenti) per vedere cosa sta succedendo! Puoi tornare a questa conversazione facendo clic su \"Messaggi diretti\" in alto a sinistra." -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Le [scorciatoie da tastiera](#keyboard-shortcuts) di Zulip ti consentono di muoverti all'interno dell'app in modo veloce ed efficace." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Premi `?` in qualunque momento per visualizzare un [riepilogo](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip utilizza [Markdown](/help/format-your-message-using-markdown), un formato intuitivo per **grassetto**, *corsivo*, elenchi puntati e altro. Clicca [qui](#message-formatting) per un cheat sheet." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Dai un'occhiata ai nostri [suggerimenti per i messaggi](/help/messaging-tips) per conoscere le reazioni delle emoji, i blocchi di codice e molto altro!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Consulta la nostra [Guida introduttiva](/help/getting-started-with-zulip) o sfoglia il [Centro assistenza](/help/) per saperne di più!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Mi dispiace, non capisco il tuo messaggio. Per favore prova uno di questi comandi:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Questo è un canale privato, come indicato dall'icona del lucchetto accanto al nome del canale." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "I canali privati sono visibili solo ai membri del canale." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Per modificare il canale, vai su [Impostazioni canali]({stream_settings_url}) e clicca su `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Questo è un messaggio sul canale #**{default_notification_stream_name}** con l'argomento `argomento demo`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Gli argomenti sono uno strumento semplice per organizzare al meglio le conversazioni." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Puoi saperne di più sugli argomenti su [Canali e argomenti]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Questo è un messaggio sul canale #**{default_notification_stream_name}** con l'argomento `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4030,669 +4122,758 @@ msgstr "JSON non valido nella risposta" msgid "Invalid response format" msgstr "Formato della risposta non valido" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Opzione GCM non valida per bouncer: priorità {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Opzione GCM non valida per bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token inesistente" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Questa organizzazione ha disabilitato l'inclusione del contenuto dei messaggi nelle notifiche push per dispositivi mobili" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} ha menzionato @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} ti ha menzionato:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} ha menzionato tutti:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Utente non autorizzato per questa query" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' non sta più usando Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "Non puoi inviare messaggi diretti al di fuori della tua organizzazione." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Errore di bouncer delle notifiche push: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Impossibile decidere tra gli argomenti '{var_name1}' e '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Argument '{var_name}' perso" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Valore errato per '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Paypload malformato" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argomento JSON \"{}\" non valido." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "Il messaggio programmato non esiste" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Sicurezza account Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Solo gli amministratori sono abilitati a scrivere su questo canale." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Solo gli amministratori e i moderatori dell'organizzazione possono scrivere in questo canale." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Gli Ospiti non posso inviare in questo canale." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "I nuovi membri non possono inviare messaggio a questo canale." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Non autorizzato a scrivere sul canale '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Si prega di fornire il 'canale'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Per favore scegli un: 'canale' o 'canale_id'" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "ID canale non valido" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Il nome del canale '{}' è già utilizzato." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Nome del canale non valido '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Canale(i) ({}) non esiste" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "I canali pubblici Web non sono abilitati." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Il gruppo di canali predefinito con id '{}' non esiste." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Il nome del canale non può essere vuoto!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Nome del canale troppo lungo (limite: {} caratteri)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Carattere non valido nel nome del canale, nella posizione {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "L'argomento non può essere vuoto!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Carattere non valido nell'argomento, alla posizione {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "I dati dei sottoscrittori non sono disponibili per questo canale" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Non posso ottenere l'elenco dei sottoscrittori del canale privato" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} non è un booleano" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} non è una data" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} non è un dict " + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} non è un galleggiante" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} è troppo piccolo" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} non è un numero intero" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} è troppo grande" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} non è una lista" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Non valida {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} è troppo lungo (limit: {max_length} characters)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} non è una stringa" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Il caricamento supererebbe la quota di caricamento dell'organizzazione." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Impossibile decodificare l'immagine; hai caricato un file immagine?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Le dimensioni dell'immagine superano il limite." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Immagine animata danneggiata." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Formato immagine animata sconosciuto." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Gruppo di utenti non valido" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "ID gruppo utenti non valido: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" +msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' deve essere un gruppo utenti di sistema." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." +msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." -msgstr "L'impostazione '{}' non può essere impostata sul gruppo '@role:internet'." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." +msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." -msgstr "L'impostazione '{}' non può essere impostata sul gruppo '@role:owners'." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." -msgstr "L'impostazione '{}' non può essere impostata sul gruppo '@role:nobody'." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nome troppo lungo!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nome troppo corto!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Carattere non valido nel nome!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Formato non valido!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Il Nome è già in uso!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nome o nome utente non buono" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Integrazione non valida '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Parametri di configurazione mancanti: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Non valido {} valore {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Dati di configurazione non validi!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tipo di bot non valido" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipo di interfaccia non valido" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "User ID {} non valido" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Nessun bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Nessun utente" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "L'utente è disattivato" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} non è una stringa" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "'{item}' non può essere vuoto." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Non valida {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} è troppo lungo (limit: {max_length} characters)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} ha lunghezza errata {length}; dovrebbe essere {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} non è un fuso orario riconosciuto" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} non è una data" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} non è un numero intero" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} è troppo piccolo" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} è troppo grande" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} non è un galleggiante" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} non è un booleano" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} non è un codice colore esadecimale valido" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} non è una lista" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} deve avere esattamente {length} elementi" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} non è un dict " - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} manca la chiave da {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Argomenti imprevisti: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} non è un allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} è sbagliata )" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} non è un URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "Il pattern URL deve contenere '%(username)s'." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' non può essere vuoto." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Il campo non deve avere scelte duplicate." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' non è una scelta valida per '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} non è una stringa o un elenco intero" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} non è una stringa o un numero intero" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} non ha una lunghezza" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} è mancante" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Manca l'intestazione dell'evento HTTP '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Il webhook {} prevede il tempo in millisecondi." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Ci dovrebbe essere una barra principale nello zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Nessun comando del genere: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Errore CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "Eventi di canale" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Disponibile su Zulip Cloud Standard. Esegui l'upgrade per accedere." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "Integrazione GIPHY disabilitata" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "Consenti GIF classificate Y (pubblico molto giovane)" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "Consenti GIF classificate G (pubblico generico)" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "Consenti GIF con classificazione PG (Guida dei genitori)" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "Consenti GIF classificate PG-13 (Guida dei genitori - minori di 13 anni)" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "Consenti GIF classificate R (limitate)" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Carattere non valido nel nome dell'emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Espressione regolare non valida: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Errore sconosciuto nell'espressione regolare" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "Modello di URL non valido." -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "Il gruppo %(name)r nel modello di URL non è presente nel pattern del linkifier." -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "Il gruppo %(name)r nel modello di linkifier non è presente nel modello di URL." -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Caratteri non validi nella lingua dei pigmenti" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Amministratori, moderatori, membri e ospiti" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Amministratori, moderatori e membri" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Amministratori e moderatori" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Solo amministratori" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nessuno" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Proprietario dell'organizzazione" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Amministratore dell''organizzazione" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderatore" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membro" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Ospite" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web pubblico" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Pubblico" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Privato, storico accessibile" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Privato, storico non accessibile" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Pubblico, storico protetto" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Tutti i membri del canale possono pubblicare messaggi" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Solo gli amministratori dell'organizzazione possono pubblicare messaggi" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Solo gli amministratori e i moderatori dell'organizzazione possono pubblicare messaggi" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Solo i membri completi dell'organizzazione possono pubblicare messaggi" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji Unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personalizzate" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji extra di Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "L'utente con ID {} è disattivato" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "L'utente con ID {} è un bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Elenco di opzioni" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Raccoglitore di persone" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Testo breve" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Testo lungo" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Selettore data" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Account esterno" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronomi" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Indirizzo IP sconosciuto" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "un sistema operativo sconosciuto" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Browser sconosciuto" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Argomento 'queue_is' mancante" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Argomento 'last_event_is' mancante" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Un evento più recente di {event_id} è già stato eliminato!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Evento {event_id} non è in questa coda" @@ -4760,89 +4941,123 @@ msgstr "Un campo con quell'etichetta esiste già." msgid "Default custom field cannot be updated." msgstr "Il campo personalizzato predefinito non può essere aggiornato." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Endpoint non disponibile in produzione." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend non abilitato." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Parametro'{}' non valido per richieste anonime" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Hotspot sconosciuto: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Devi specificare almeno un indirizzo email." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Canale con id: {}. non esiste. Non sono stati spediti inviti." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "Non sei autorizzato a iscrivere altri utenti ai canali." -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Nessun invito" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "L'invito è già stato revocato" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "ID canale {} non valido. Non sono stati inviati inviti." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "La modifica dei messaggi nello storico è disabilitata da questa organizzazione" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Non hai il permesso di cancellare questo messaggio" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Il tempo limite per cancellare questo messaggio è trascorso" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Messaggio già cancellato" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Troppi messaggi richiesti (massimo {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "L'ancora può essere esclusa solo alla fine del range" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Nessun argomento del genere '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Mittente mancante" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Il mirroring non è consentito con gli ID utente del destinatario" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Messaggio con mirroring non valido" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Il mirroring Zephyr non è permesso in questa organizzazione" @@ -4858,27 +5073,28 @@ msgstr "Utente già in muto" msgid "User is not muted" msgstr "L'utente non è in muto" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "La presenza non è supportata per gli utenti di bot." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Nessun dato di presenza per {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Il client non ha passato nessun nuovo valore." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Il client deve passare emoji_name se passa emoji_code o reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Stato non valido: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4894,37 +5110,37 @@ msgid "" "emoji_code" msgstr "Almeno uno dei seguenti argomenti deve essere presente: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "La reazione non esiste" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Le conferme di lettura sono disabilitate in questa organizzazione." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Lingua '{}' non valida" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Almeno un metodo di autenticazione deve essere abilitato." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "video_chat_provider {} non valido" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "giphy_rating {} non valido" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Deve essere un'organizzazione demo." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Dominio non valido: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4936,42 +5152,43 @@ msgstr "Il dominio {domain} fa già parte della tua organizzazione." msgid "No entry found for domain {domain}." msgstr "Nessuna voce trovata per il dominio {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Devi caricare esattamente un file." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Solo gli amministratori possono ignorare le emoji predefinite." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "l file caricato è più grande del limite consentito di {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Limite di velocità superato." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Si prega di richiedere un'esportazione manuale a {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID esportazione dati non valido" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Export già cancellato" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "Esportazione fallita, niente da eliminare" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "L'esportazione è ancora in corso" @@ -4979,7 +5196,7 @@ msgstr "L'esportazione è ancora in corso" msgid "You must upload exactly one icon." msgstr "Devi caricare esattamente un'icona." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier non trovato." @@ -4987,107 +5204,100 @@ msgstr "Linkifier non trovato." msgid "You must upload exactly one logo." msgstr "Devi caricare esattamente un logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Playground non valido" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "Destinatario richiesto durante l'aggiornamento del tipo di messaggio programmato." -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "Argomento richiesto durante l'aggiornamento del tipo di messaggio programmato al canale." -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "Formato della richiesta non valido" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "DSN non valido" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Utente non autorizzato a eseguire query per conto di '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "I canali privati non possono essere impostati come predefiniti." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Devi passare \"new_description\" o \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Valore non valido per \"op\". Specificare uno di \"aggiungi\" o \"rimuovi\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "I canali predefiniti non possono essere resi privati." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Il canale ha già questo nome!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Niente da fare. Specifica almeno uno da 'aggiungere' o da 'eliminare'." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} ti ha iscritto al canale {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} ti ha iscritto ai seguenti canali:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "impossibile accedere al canale ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Puoi invitare altri utenti mirroring di Zephyr solo in canali privati." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} ha creato i canali seguenti: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} ha creato un nuovo canale {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "nuovi canali" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** canale creato da {user_name}. **Descrizione:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Proprietà dell'iscrizione sconosciuta: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Non iscritto al canale id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "JSON invalido per sottomissione" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Non sei autorizzato a visualizzare questo file.

" @@ -5103,97 +5313,108 @@ msgstr "L'utente ha disabilitato le notifiche di digitazione per i messaggi dei msgid "User has disabled typing notifications for direct messages" msgstr "L'utente ha disattivato le notifiche di digitazione per i messaggi diretti" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

File non trovato.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Tipo di token non valido" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Nome del file non valido" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Devi specificare un file da caricare" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Puoi caricare solo un file alla volta" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nessun nuovo dato fornito" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "{user_full_name} ti ha aggiunto al gruppo {group_name}." -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "{user_full_name} ti ha rimosso dal gruppo {group_name}." -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "L'utente {user_id} è già membro di questo gruppo" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Questo non è un membro '{}' in questo gruppo" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Il gruppo utenti {group_id} è già un sottogruppo di questo gruppo." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Il gruppo utenti {group_id} non è un sottogruppo di questo gruppo." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Le modifiche dell'avatar sono disabilitate in questa organizzazione." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Le modifiche dell'indirizzo email sono disabilitate in questa organizzazione." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "default_language non valido" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Suono di notifica non valido '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Periodo di batch email non valido: {} secondi" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "La tua password di Zulip è gestita in LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Password errata!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Stai facendo troppi tentativi! Riprova tra {} secondi." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "La nuova password è troppo semplice!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Devi caricare esattamente un avatar." @@ -5240,6 +5461,10 @@ msgstr "Nome del bot incorporato non valido." msgid "Username already in use" msgstr "Il nome utente è già in uso" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5250,8 +5475,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Gli indirizzi email monouso non sono consentiti in questa organizzazione" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "L'email '{}' è già in uso" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5269,27 +5495,27 @@ msgstr "Identificatore di sessione Zoom non valido" msgid "Invalid Zoom credentials" msgstr "Credenziali di Zoom non valide" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Creazione della chiamata Zoom fallita" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton non è configurato." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Firma non valida." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Errore di connessione al Big Blue Button server." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Errore di autenticazione al Big Blue Button server." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Il Big Blue Botton server ha restituito un errore imprevisto." @@ -5309,28 +5535,28 @@ msgstr "Cache Kerberos invalida" msgid "We were unable to set up mirroring for you" msgstr "Non siamo stati in grado di configurare il mirroring per te" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "I progetti che utilizzano questo provider del sistema di controllo della versione non sono supportati" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Payload non valido" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Richiesta webhook sconosciuta" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "L'argomento non può essere vuoto" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Il contenuto non può essere vuoto" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Input JSON rovinato" @@ -5349,7 +5575,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Il webhook newrelic richiede che lo stato sia in [creato|attivato|riconosciuto|chiuso]" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "La chiave degli eventi non è presente nel payload" @@ -5357,19 +5583,20 @@ msgstr "La chiave degli eventi non è presente nel payload" msgid "Unable to handle Pivotal payload" msgstr "Impossibile gestire il payload Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Errore: parametro channels_map_to_topics diverso da 0 o 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Messaggio da Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Azione webhook WordPress sconosciuta: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5386,47 +5613,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "È necessario convalidare con la chiave API del server Zulip valida" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID non valido" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Tipo di token non valido" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} non è un hostname valido" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "User_id o user_uuid mancanti" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Proprietà non valida {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "I dati sono fuori servizio." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Dati non validi." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "È necessario reimpostare la password." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Parametri id_token mancanti" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP non valido" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Non puoi usare entrambi mobile_flow_otp e desktop_flow_otp insieme." diff --git a/locale/it/translations.json b/locale/it/translations.json index f95803905d..645086c586 100644 --- a/locale/it/translations.json +++ b/locale/it/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(nascosto)", "(no description)": "(nessuna descrizione)", "(no topic)": "(nessun argomento)", + "(or )": "", "(you)": "(tu)", "({message_retention_days} days)": "({message_retention_days} giorni)", "/dark (Switch to the dark theme)": "/dark (Attiva il tema scuro)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} non è iscritto a questo canale. Non riceverà notifiche a meno che tu non lo iscriva.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} ha {number_of_invites_by_user} inviti non scaduti.", "Subscribe": "Iscriviti", - "Click here to learn about exporting private streams and messages.": "Clicca qui per saperne di più sull'esportazione di canali e messaggi privati.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Fai l'upgrade per ottenere più spazio.", " to add a new line": " per aggiungere una nuova riga", " to send": " inviare", @@ -82,15 +83,18 @@ "Add alert word": "Aggiungi parola con avviso", "Add all users": "Aggiungi tutti gli utenti", "Add another user...": "Aggiungi un altro utente...", + "Add audio call": "", "Add code playground": "Aggiungi codice playgroud", + "Add default streams": "", + "Add email": "", "Add emoji": "Aggiungi emoji", "Add emoji reaction": "Aggiungi reazione emoji", "Add extra emoji for members of the {realm_name} organization.": "Aggiungi emoji extra per i membri dell'organizzazione {realm_name}.", "Add global time": "Aggiungi orario globale", "Add linkifier": "Aggiungi generatore di link", "Add members": "Aggiungi membri", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Aggiungi membro…", - "Add new default stream": "Aggiungi canale predefinito", "Add new user group": "Aggiungi un nuovo gruppo di utenti", "Add one or more users": "Aggiungi uno o più utenti", "Add option": "Aggiungi opzione", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Aggiungi iscritti. Usa gruppi o #streamname per aggiungere iscritti in blocco.", "Add task": "Aggiungi un compito", "Add video call": "Aggiungi videochiamata", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Aggiunto con successo!", "Added successfully.": "Aggiunto con successo.", "Administrator": "Amministratore", @@ -124,6 +129,7 @@ "Alerted messages": "Messaggi di allerta", "All": "Tutto", "All direct messages": "Tutti i messaggi diretti", + "All groups": "", "All messages": "Tutti i messaggi", "All messages including muted streams": "Tutti i messaggi inclusi i canali silenziati", "All streams": "Tutti i canali", @@ -136,9 +142,11 @@ "Allow subdomains": "Permetti sottodomini", "Allowed domains": "Domini permessi", "Allowed domains: {domains}": "Domini consentiti: {domains}", + "Already members:": "", "Already not subscribed.": "Già non iscritto.", "Already subscribed to {stream}": "Già iscritto a {stream}", "Already subscribed users:": "Utenti già iscritti:", + "Already subscribed.": "", "Always": "Sempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Una chiave API può essere usata per accedere ad un account Zulip da un'applicazione. Chiunque abbia accesso alla tua chiave API può leggere i tuoi messaggi, inviare messaggi a tuo nome, e quindi impersonarti su Zulip, quindi dovresti gestirla con molta attenzione, alla pari della tua password.
Ti consigliamo di creare dei bot, e di usare l'account e le chiavi API dei bot per accedere alle API Zulip, a meno che il compito richieda necessariamente l'accesso al tuo account.", "An hour ago": "Un'ora fa", @@ -150,6 +158,7 @@ "Archive ?": "Archivio ?", "Archive stream": "Archivio canale", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "L'archiviazione del canale cancellerà immediatamente l'iscrizione di tutti. Questa azione non può essere annullata.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "Sei sicuro di voler continuare?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Sei sicuro di voler creare il canale''''{stream_name}'''' e iscrivere {count} utenti a questo canale?", "Are you sure you want to deactivate this organization?": "Sei sicuro di voler disattivare questa organizzazione?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Sei sicuro di voler inviare nuovamente l'invito a ?", "Are you sure you want to revoke the invitation to {email}?": "Sei sicuro di voler revocare l'invito a {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Sei sicuro di voler revocare questo link di invito creato da {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Sei sicuro di voler inviare notifiche @-mention ai {subscriber_count} utenti iscritti a #{stream_name}? In caso contrario, modifica il tuo messaggio per rimuovere la menzione @{wildcard_mention}.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Sei sicuro di voler rimuovere da Speciali tutti i messaggi in ? Questa azione non può essere annullata.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Sei sicuro di voler rimuovere tutti i messaggi speciali? Questa azione non può essere annullata.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Le modifiche all'avatar sono disabilitate in questa organizzazione", "Avatar from Gravatar": "Avatar da Gravatar", "Back to streams": "Torna ai canali", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Poiché sei l'unico proprietario dell'organizzazione, non puoi disattivare il tuo account.", "Because you are the only subscriber, this stream will be automatically archived.": "Poiché sei l'unico abbonato, questo canale verrà archiviato automaticamente.", "Billing": "Fatturazione", @@ -190,8 +201,11 @@ "Bot owner": "Proprietario del bot", "Bot type": "Tipo di bot", "Bots": "Bot", + "Browse 1 more stream": "", "Browse recent conversations": "Sfoglia le conversazioni recenti", "Browse streams": "Sfoglia canali", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Business", "Busy": "Occupato", "By deactivating your account, you will be logged out immediately.": "Disattivando il tuo account, sarai scollegato immediatamente.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Clicca qui per scoprire", "Click on the pencil () icon to edit and reschedule a message.": "Fare clic sull'icona della matita () per modificare e riprogrammare un messaggio.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Fare clic fuori dalla casella di input per salvare. Avviseremo automaticamente chiunque sia stato aggiunto o rimosso.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Fare clic per visualizzare o scaricare.", "Close": "Chiudi", "Close modal": "Chiudi finestra", @@ -232,7 +248,7 @@ "Commuting": "In movimento", "Compact": "Compatto", "Complete": "Completo", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Completa il profilo dell'organizzazione per creare un'identità e spiegare lo scopo di questa organizzazione Zulip.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Componi il messaggio", "Compose your message here": "Componi il tuo messaggio qui", "Compose your message here...": "Componi il tuo messaggio qui...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Converti le emoticon prima di spedire (:) diventa 😃)", "Cookie Bot": "Bot Cookie", "Copied!": "Copiato!", + "Copy URL": "", "Copy address": "Copia indirizzo", "Copy and close": "Copia e chiudi", "Copy code": "Copia codice", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Attualmente sto visualizzando tutti i messaggi.", "Currently viewing the entire stream.": "Attualmente sto visualizzando l'intero canale.", "Custom": "Personalizzato", + "Custom URL": "", "Custom emoji": "Emoji personalizzate", "Custom language: {query}": "Lingua personalizzata: {query}", "Custom linkifier added!": "Linkifier personalizzato aggiunto!", @@ -302,10 +320,12 @@ "Deactivated": "Disattivato", "Deactivated users": "Utenti disattivati", "December": "Dicembre", + "Default": "", "Default for stream": "Di default per il canale", "Default is {language}. Use 'text' to disable highlighting.": "Default è {language}. Usa 'text' per disabilitare l'evidenziazione.", "Default language for code blocks": "Lingua predefinita per i blocchi di codice", "Default streams": "Canali di default", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Canali predefiniti per questa organizzazione", "Default user settings": "Impostazioni predefinite dell'utente", "Default view": "Visualizzazione predefinita", @@ -314,12 +334,14 @@ "Delete": "Cancella", "Delete alert word": "Cancella avviso parola", "Delete all drafts": "Cancella tutte le bozze", + "Delete all selected drafts": "", "Delete code playground?": "Elimina codice parco giochi?", "Delete custom profile field?": "Eliminare il campo del profilo personalizzato?", "Delete data export?": "Eliminare l'esportazione dei dati?", "Delete draft": "Cancella bozza", "Delete file": "Cancella file", "Delete file?": "Cancellare il file?", + "Delete group": "", "Delete icon": "Cancella icona", "Delete linkifier?": "Eliminare il linkifier?", "Delete logo": "Cancella logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "A seconda delle dimensioni dell'organizzazione, un'esportazione può richiedere da pochi secondi a un'ora.", "Deprecation notice": "Avviso di cancellazione", "Description": "Descrizione", + "Deselect draft": "", "Desktop": "Desktop", "Desktop & mobile apps": "Desktop e mobile apps", "Desktop message notifications": "Notifiche dei messaggi sul desktop", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentazione dettagliata della formattazione del messaggio", "Detailed search filters documentation": "Documentazione dettagliata dei filtri di ricerca", "Direct message": "Messaggio diretto", + "Direct message to me": "", "Direct messages": "Messaggi diretti", "Direct messages and mentions": "Messaggi diretti e menzioni", "Direct messages are disabled in this organization.": "I messaggi diretti sono disattivati in questa organizzazione.", "Direct messages disabled": "Messaggi diretti disattivati", + "Disable": "", "Disable notifications?": "Disattivare le notifiche?", "Disabled": "Disabilitato", "Discard": "Scarta", @@ -360,9 +385,9 @@ "Display my availability to other users": "Mostra la mia disponibilità ad altri utenti", "Display names of reacting users when few users have reacted to a message": "Visualizza i nomi degli utenti che reagiscono quando pochi utenti hanno reagito a un messaggio", "Display on user card": "Visualizza su tessera utente", - "Display settings": "Impostazioni di visualizzazione", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Vuoi ancora spostare gli ultimi {total_messages_allowed_to_move, plural, one {message} other {# messaggi}}?", "Do you want to add everyone?": "Vuoi aggiungere tutti?", + "Do you want to mark them all as read?": "", "Domain": "Dominio", "Don’t allow disposable email addresses": "Non accettare indirizzi email usa e getta", "Download": "Scarica", @@ -388,7 +413,7 @@ "Edit custom profile field": "Modifica campo personalizzato del profilo", "Edit linkfiers": "Modifica linkfier", "Edit message": "Modifica messaggio", - "Edit or reschedule message": "Modifica o riprogramma il messaggio", + "Edit profile": "", "Edit selected draft": "Modifica la bozza selezionata", "Edit selected message or view source": "Modifica il messaggio selezionato o visualizza la fonte", "Edit status": "Modifica stato", @@ -398,7 +423,6 @@ "Edit your last message": "Modifica il tuo ultimo messaggio", "Edit your profile": "Modifica il tuo profilo", "Edit {group_name}": "Modifica {group_name}", - "Edited ({last_edit_timestr})": "Modificato ({last_edit_timestr})", "Edited by {full_name}": "Modificato da {nome_completo}", "Education (for-profit)": "Istruzione (a scopo di lucro)", "Education (non-profit)": "Istruzione (senza scopo di lucro)", @@ -461,6 +485,7 @@ "External account type": "Tipo di account esterno", "External link": "Collegamento esterno", "Failed": "Fallito", + "Failed adding one or more streams.": "", "Failed to create video call.": "Creazione della videochiamata fallita.", "Failed to generate preview": "Errore nella generazione dell'anteprima", "Failed to upload %'{file}'": "Caricamento del file %'{file}' fallito", @@ -485,11 +510,9 @@ "Filter exports": "Filtra le esportazioni", "Filter groups": "Filtra gruppi", "Filter invites": "Filtra gli inviti", - "Filter languages": "Filtra le lingue", "Filter linkifiers": "Filtra i generatori di collegamento", "Filter members": "Filtra membri", "Filter muted users": "Filtra utenti silenziati", - "Filter roles": "Filtra i ruoli", "Filter streams": "Filtra i canali", "Filter subscribers": "Filtra iscritti", "Filter topics": "Filtra gli argomenti", @@ -500,6 +523,9 @@ "First message": "Primo messaggio", "First time? Read our guidelines for creating and naming streams.": "Prima volta qui? Leggi le nostre guide per creare e denominare i canali.", "First time? Read our guidelines for creating user groups.": "Prima volta? Leggi nostra guidelines per la creazione di gruppi di utenti.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Ad esempio, per configurare un code playground per i blocchi di codice contrassegnati come Python, puoi impostare:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Per altri esempi e dettagli tecnici, consulta la documentazione del Centro assistenza sull'aggiunta di code playground.", "For more examples, see the help center documentation on adding linkifiers.": "Per altri esempi, consulta la documentazione del Centro assistenza sull'aggiunta di linkifier.", @@ -510,6 +536,7 @@ "GIPHY attribution": "Attribuzione GIPHY", "GIPHY integration": "Integrazione GIPHY", "General": "Generale", + "Generate URL for an integration": "", "Generate email address": "Genera indirizzo email", "Generate invite link": "Genera link di invito", "Generate new API key": "Genera nuova chiave API", @@ -542,14 +569,18 @@ "High contrast mode": "Modalità ad alto contrasto", "Hint": "Suggerimento", "Hint (up to 80 characters)": "Suggerimento (fino a 80 caratteri)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Umani", "Idle": "Non attivo", "If you don't know your password, you can reset it.": "Se non conosci la tua password, puoi reimpostarla.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Utenti disattivati ignorati:", "Image": "Immagine", "In a meeting": "In riunione", "Inactive": "Non attivo", "Inactive bots": "Bot inattivi", + "Inbox": "", "Include DMs": "Includi MD", "Include content of direct messages in desktop notifications": "Includi il contenuto dei messaggi diretti nelle notifiche desktop", "Include message content in message notification emails": "Includi il contenuto dei messaggi nelle notifiche via email", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "I webhook in ingresso possono solamente inviare messaggi.", "Initiate a search": "Inizia una ricerca", "Insert new line": "Inserisci nuova linea", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrazioni", "Interface": "Interfaccia", "Invalid URL": "URL non valido", @@ -581,6 +614,8 @@ "Inviting...": "Sto invitando...", "Italic": "Corsivo", "January": "Gennaio", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "Partecipa alla videochiamata.", "Join {realm_name}": "Unisciti a {realm_name}", "Joined": "Unito", @@ -599,8 +634,10 @@ "Last 30 days": "Ultimi 30 giorni", "Last 6 months": "Ultimi 6 mesi", "Last active": "Ultimo attivo", + "Last edited {last_edit_timestr}": "", "Last message": "Ultimo messaggio", "Last modified": "Ultimo modificato", + "Last moved {last_edit_timestr}": "", "Learn more": "Per saperne di più.", "Learn more about mentions here.": "Maggiori informazioni sulle menzioni qui.", "Learn more about starring messages here.": "Maggiori informazioni sui messaggi speciali qui.", @@ -623,6 +660,7 @@ "Log out": "Esci", "Looking for our integrations or API documentation?": "Cerchi la nostra documentazione di integrazioni o API ?", "MOVED": "SPOSTATO", + "Main menu": "", "Manage bot": "Gestisci bot", "Manage streams": "Gestisci i canali", "Manage this bot": "Gestisci questo bot", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Menziona un'ora sensibile al fuso orario", "Mentioned in": "Menzionato in", "Mentions": "Menzioni", - "Menu": "Menu", "Menus": "Menu", "Message #{stream_name}": "Messaggio #{stream_name}", "Message #{stream_name} > {topic_name}": "Messaggio #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Messaggio {recipient_names}", "Message {recipient_name} ({recipient_status})": "Messaggio {recipient_name} ({recipient_status})", "Messages in all public streams": "Messaggi in tutti i canali pubblici", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "I messaggi non verranno contrassegnati automaticamente come letti perché non si tratta di una visualizzazione conversazione. Cambia impostazione", "Messages will not be automatically marked as read. Change setting": "I messaggi non verranno contrassegnati automaticamente come letti. Cambia impostazione", "Mobile": "Mobile", @@ -681,11 +720,11 @@ "Move some messages?": "Spostare alcuni messaggi?", "Move this and all following messages in this topic": "Sposta questo e tutti i messaggi seguenti in questo argomento", "Move topic": "Sposta argomento", - "Moved ({last_edit_timestr})": "Spostato ({last_edit_timestr})", "Moved by {full_name}": "Spostato da {full_name}", "Moving messages": "Messaggi in spostamento", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Deve essere invitato da un iscritto; i nuovi iscritti possono vedere solo i messaggi inviati dopo essersi iscritti; nascosto agli utenti non amministratori", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Deve essere invitato da un iscritto; i nuovi iscritti possono visualizzare la cronologia completa dei messaggi; nascosto agli utenti non amministratori", + "Mute": "", "Mute stream": "Silenzia il canale", "Mute this user": "Silenzia questo utente", "Mute topic": "Silenzia l'argomento", @@ -734,38 +773,42 @@ "New password is too weak": "La nuova password è troppo semplice", "New stream announcements": "Nuovi annunci di canale", "New stream message": "Nuovo messaggio su canale", + "New stream notifications": "Nuove notifiche di canale", "New task": "Nuovo compito", "New topic": "Nuovo argomento", "New user announcements": "Nuovi annunci utente", + "New user notifications": "Notifiche per nuovi utenti", "Next message": "Prossimo messaggio", "Next unread direct message": "Prossimo messaggio diretto non letto", "Next unread topic": "Prossimo argomento non letto", - "Next week": "Settimana successiva", "No bots match your current filter.": "Nessun bot corrisponde al tuo filtro.", + "No conversations match your filters.": "", "No custom emoji.": "Nessuna emoji personalizzata.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nessun canale di default corrisponde al tuo filtro.", "No description.": "Nessuna descrizione.", + "No drafts selected": "", "No drafts.": "Nessuna bozza.", "No exports.": "Nessuna esportazione.", "No invites match your current filter.": "Nessun invito corrisponde al tuo filtro.", "No language set": "Nessuna lingua impostata", "No linkifiers set.": "Nessuno linkifiers settati.", + "No matching results": "", "No matching users.": "Nessun utente corrispondente.", "No one has read this message yet.": "Nessuno ha ancora letto questo messaggio.", "No owner": "Nessun proprietario", "No playgrounds configured.": "Playgrounds non configurati.", "No restrictions": "Nessun limite", "No scheduled messages.": "Nessun messaggio programmato.", - "No search results": "Nessun risultato", "No search results.": "Nessun risultato trovato.", "No stream subscriptions.": "Nessuna iscrizione ai canali.", "No streams": "No canali", "No topics are marked as resolved.": "Nessun argomento è contrassegnato come risolto.", - "No topics match your current filter.": "Nessun argomento corrisponde al tuo attuale filtro.", "No user group subscriptions.": "Nessuna iscrizione a gruppi di utenti.", "No user groups": "Nessun gruppo di utenti", "No user to subscribe.": "Nessun utente da iscrivere.", "No users match your current filter.": "Nessun utente corrisponde al tuo filtro.", + "No users to add.": "", "No, I'll catch up.": "No grazie, me li guardo tutti.", "Nobody": "Nessuno", "Nobody in this Zulip organization will be able to see this email address.": "Nessuno in questa organizzazione Zulip sarà in grado di vedere questo indirizzo email.", @@ -784,6 +827,7 @@ "Notify stream": "Notifica canale", "Notify this user by email?": "Avvisare questo utente tramite e-mail?", "November": "Novembre", + "Numbered list": "", "October": "Ottobre", "Old password": "Vecchia password", "Once you leave this group, you will not be able to rejoin.": "Una volta che lasci questo gruppo, non sarai più in grado di unirti di nuovo.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Solo i proprietari possono modificare queste impostazioni.", "Only stream members can add users to a private stream": "Solo i membri del canale possono aggiungere utenti ad un canale privato", "Only stream members can add users to a private stream.": "Solo i membri di un canale possono aggiungere utenti a un canale privato.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Solo gli iscritti a questo canale possono modificare le autorizzazioni del canale.", "Open": "Apri", "Open message menu": "Apri menu messaggio", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Si prega di specificare almeno un destinatario valido.", "Political group": "Gruppo politico", "Posted by {full_name}": "Postato da {full_name}", + "Preferences": "", "Press > for list of topics": "Premere > per l'elenco degli argomenti", "Prevent users from changing their avatar": "Impedire agli utenti di modificare il proprio avatar", "Prevent users from changing their email address": "Non permettere agli utenti di cambiare il loro indirizzo email", @@ -869,6 +915,7 @@ "Previous message": "Messaggio precedente", "Privacy": "Privacy", "Privacy settings": "Impostazioni della privacy", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Privato, storico non accessibile", "Private, shared history": "Privato, storico accessibile", "Profile": "Profilo", @@ -883,6 +930,7 @@ "Reactivate bot": "Riattiva il bot", "Reactivate this bot": "Riattiva questo bot", "Reactivate this user": "Riattiva questo utente", + "Reactivate user": "", "Reactivate {name}": "{name} Riattivato", "Read receipts": "Letto da", "Read receipts are currently disabled in this organization.": "Le conferme di lettura sono attualmente disabilitate in questa organizzazione.", @@ -930,6 +978,7 @@ "Saved as draft": "Salvato come bozza", "Saved. Please reload for the change to take effect.": "Salvato. Si prega di ricaricare per rendere effettive le modifche.", "Saving": "Salvataggio", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "Programma per {formatted_send_later_time}", "Schedule message": "Programma messaggio", "Scheduled messages": "Messaggi programmati", @@ -948,10 +997,15 @@ "See how to configure email.": "Guarda come configurare la mail.", "Select a stream": "Seleziona un canale", "Select a stream below or change topic name.": "Seleziona un canale di seguito o cambia il nome dell'argomento.", - "Select date and time": "Seleziona data e ora", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Seleziona emoji", "Select language": "Selezione lingua", + "Select stream": "", "Send": "Invio", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Invia avviso automatico al nuovo argomento", "Send automated notice to old topic": "Invia avviso automatico al vecchio argomento", "Send digest emails when I'm away": "Invia email automatiche quando sono assente", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Mostra anteprime delle immagini caricate e collegate", "Show starred message count": "Mostra il numero di messaggi speciali", "Show status text": "Mostra testo dello stato", + "Show unread counts for": "", "Show/change your API key": "Mostra/modifica la tua chiave API", "Sign up": "Iscriviti", "Silent mentions do not trigger notifications.": "Le menzioni silenziose non attivano le notifiche.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Ordina per traffico settimanale stimato", "Sort by name": "Ordina per nome", "Sort by number of subscribers": "Ordine per numero di iscritti", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Speciale", "Star selected message": "Contrassegna come speciale il messaggio selezionato", @@ -1024,8 +1080,10 @@ "Subscribe": "Iscriviti", "Subscribe them": "Iscriviti", "Subscribe to/unsubscribe from selected stream": "Iscriviti /disiscriviti dal canale selezionato", + "Subscribe {full_name} to streams": "", "Subscribed": "Iscritti", "Subscribed streams": "Canali a cui sei iscritto", + "Subscribed successfully!": "Sottoscritto con successo!", "Subscriber count": "Conteggio iscritti", "Subscribers": "Iscritti", "Successfully subscribed user:": "Utente iscritto con successo:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Al momento non ci sono parole di avviso .", "There are no messages here.": "Non ci sono messaggi qui.", "There are no streams you can view in this organization.": "Non ci sono canali che puoi visualizzare in questa organizzazione.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Esiste un'emoji predefinita con questo nome. Vuoi sostituirlo con un'emoji personalizzata? Il nome :{emoji_name}: non funzionerà più per accedere all'emoji predefinita.", "They administer the following bots:": "Amministrano i seguenti bot:", "This Zulip server is running an old version and should be upgraded.": "Questo server Zulip esegue una vecchia versione e dovrebbe essere aggiornato.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Questa non è una conversazione accessibile pubblicamente. ", "This is what a Zulip notification looks like.": "Ecco come appare una notifica Zulip.", "This message could not be sent at the scheduled time.": "Non è stato possibile inviare il messaggio all'orario pianificato.", - "This message is no longer scheduled for {deliver_at}.": "Questo messaggio non è più pianificato per le {deliver_at}.", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Questo messaggio è stato nascosto perché hai silenziato il mittente.", "This organization is configured so that administrators and moderators can add custom emoji.": "Questa organizzazione è configurata in modo che amministratori e moderatori possano aggiungere emoji personalizzate.", "This organization is configured so that administrators and moderators can modify user groups.": "Questa organizzazione è configurata in modo che amministratori e moderatori possano modificare i gruppi di utenti.", @@ -1103,7 +1162,6 @@ "Time zone": "Fuso orario", "Time's up!": "Tempo terminato!", "Tip: You can also send \"/poll Some question\"": "Tip: Puoi anche inviare \"/poll per Qualche domanda", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Per aggiungere l'evidenziazione della sintassi a un blocco di codice multilinea, aggiungi il primo nome breve Pygments dopo il primo set di segni di spunta. Puoi anche creare un blocco di codice facendo rientrare ogni riga con 4 spazi.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Per invitare altri utenti, per favore aumenta il numero di licenze o disattiva gli utenti inattivi.", "To preserve your reading state, this view does not mark messages as read.": "Per preservare lo stato di lettura, questa visualizzazione non contrassegna i messaggi come letti.", "Today": "Oggi", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Cambia iscrizione", "Toggle the gear menu": "Attiva o disattiva il menu", "Toggle topic mute": "Inverti silenziamento dell'argomento", - "Tomorrow": "Domani", "Tomorrow at {time}": "Domani alle {time}", "Topic": "Argomento", "Topic muted": "Argomento silenziato", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Disattiva la modalità invisibile", "Two factor authentication": "Autenticazione a due fattori", "Type": "Tipo", + "URL": "", + "URL for your integration": "", "URL pattern": "Pattern URL", - "URL prefix": "Prefisso URL", "URL template": "Modello dell'URL", "USERS": "UTENTI", "Uncheck all": "Deseleziona tutto", @@ -1139,6 +1197,7 @@ "Unmute this user": "Togli silenzioso a questo utente", "Unmute topic": "Riattiva audio dell'argomento", "Unmuted": "Togli il muto", + "Unmuted streams and topics": "", "Unpin stream from top": "Togli canale dall'alto", "Unread": "Non letti", "Unread count badge (appears in desktop sidebar and browser tab)": "Badge conteggio non letto (appare nella barra laterale del desktop e nella scheda del browser)", @@ -1199,7 +1258,7 @@ "View all streams": "Visualizza tutti i canali", "View direct messages": "Visualizza i messaggi diretti", "View drafts": "Visualizza le bozze", - "View edit history": "Mostra storia delle modifiche", + "View edit and move history": "", "View file": "Mostra file", "View in playground": "Visualizza in playground", "View in {name}": "Visualizza in {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web pubblico", "Wednesday": "Mercoledì", "Week of {date}": "Settimana del {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Ben tornato! Hai{unread_msgs_count} messaggi non letti. Vuoi contrassegnarli tutti come letti?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Quali pronomi dovrebbero usare le persone per riferirsi a te?", "When you deactivate , they will be immediately logged out.": "Quando disattivi , verranno immediatamente disconnessi.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Se le menzioni jolly come @all sono trattate come menzioni ai fini delle notifiche.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Quali parti dell'email devono essere incluse nel messaggio Zulip inviato a questo canale?", "Who can access the stream?": "Chi può accedere al canale?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Chi può creare e gestire gruppi di utenti", "Who can create private streams": "Chi può creare canali privati", "Who can create public streams": "Chi può creare canali pubblici", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Chi può creare canali web pubblici", "Who can delete their own messages": "Chi può cancellare i propri messaggi", - "Who can invite users to this organization": "Chi può invitare utenti in questa organizzazione", "Who can move messages to another stream": "Chi può spostare i messaggi in un altro canale", "Who can move messages to another topic": "Chi può spostare i messaggi in un altro argomento", "Who can post to the stream?": "Chi può postare nel canale?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "Chi può annullare l'iscrizione di altri a questo canale?", "Who can use @all/@everyone mentions in large streams": "Chi può usare @all/@everyone menziona in canali di grandi dimensioni", "Who can use direct messages": "Chi può usare i messaggi diretti", @@ -1268,14 +1329,17 @@ "You and": "Tu e", "You and {display_reply_to}": "Tu e {display_reply_to}", "You and {recipients}": "Tu e {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "Stai per disattivare tutte le notifiche per i messaggi privati, @‑menzioni e gli avvisi, che potrebbero farti perdere messaggi che richiedono la tua tempestiva attenzione. Se desideri disabilitare temporaneamente tutte le notifiche desktop, prendi in considerazione l'attivazione di \"Non disturbare\".", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "Non sei autorizzato a inviare messaggi diretti in questa organizzazione.", "You are not currently subscribed to this stream.": "Non sei iscritto a questo canale.", "You are not subscribed to any streams.": "Non sei iscritto a nessun canale.", "You are not subscribed to stream ": "Non sei iscritto al canale ", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Stai inviando un messaggio a un argomento risolto. Puoi prima inviare così com'è o annullare la risoluzione dell'argomento.", "You are using an old version of the Zulip desktop app with known security bugs.": "Stai utilizzando una vecchia versione dell'app desktop Zulip con bug di sicurezza noti.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Non sei iscritto a questo canale e nessuno ne ha ancora parlato!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Puoi fare anche delle tabelle con questa tabella di sintassi Markdown-ish.", "You can combine search filters as needed.": "Puoi combinare i filtri di ricerca secondo necessità.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Puoi accedere completamente a questa community e partecipare alle conversazioni creando un account Zulip in questa organizzazione.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "Non sei autorizzato a risolvere argomenti con messaggi più vecchi di {N, plural, one {# hour} other {# hours}} in questa organizzazione.", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "Non sei autorizzato a risolvere argomenti con messaggi più vecchi di {N, plural, one {# minute} other {# minutes}} in questa organizzazione.", "You do not have permission to use wildcard mentions in this stream.": "Non sei autorizzato a utilizzare le menzioni con caratteri jolly in questo canale.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "Non hai ancora conversazioni con messaggi diretti.", + "You follow this topic": "", "You get": "Ottieni", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Tu hai silenziato .", + "You have muted this topic": "", "You have no active bots.": "Non hai bot attivi.", "You have no direct messages including {person} yet.": "Non hai ancora messaggi diretti che includono {person}.", "You have no direct messages with these users yet.": "Non hai ancora messaggi diretti con questi utenti.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Non hai ancora silenziato alcun utente.", "You have not sent any direct messages to yourself yet!": "Non hai ancora inviato messaggi diretti a te stesso!", "You have not uploaded any files.": "Non hai caricato nessun file.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Non sei stato ancora menzionato!", "You haven't received any messages sent by {person} yet.": "Non hai ancora ricevuto alcun messaggio inviato da {person}.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Devi essere un amministratore per poter creare un canale senza iscriverti.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Devi avere in esecuzione il mirroring Zephyr per poter inviare messaggi!", "You searched for:": "Hai cercato per:", "You subscribed to stream ": "Ti sei iscritto al canale ", "You type": "Tu digiti", "You unsubscribed from stream ": " Hai annullato l'iscrizione al canale ", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "Non riceverai notifiche sui nuovi messaggi.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Non sei iscritto a questo canale. Non riceverai notifiche se altri utenti risponderanno al tuo messaggio.", "Your API key:": "La tua chiave API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Il tuo account Zulip su è stato disattivato e non potrai più accedere.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "Il tuo messaggio è stato programmato per {deliver_at}.", "Your message is taking longer than expected to be sent. Sending…": "Il tuo messaggio sta impiegando più tempo del previsto per essere inviato. Invio...", "Your message was sent to a stream you have muted.": "Il tuo messaggio è stato inviato a un canale che hai disattivato.", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Zulip Server {display_version}", "Zulip Server {display_version} (modified)": "Zulip Server {display_version} (modificata)", "Zulip Server {display_version} (patched)": "Zulip Server {display_version} (pecciato)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "Zulip ti consente di disattivare l'audio di argomenti e canali per evitare di ricevere messaggi di notifica che non ti interessano. La disattivazione di un canale disattiva in modo efficace tutti gli argomenti in quel canale. Puoi anche disattivare manualmente l'audio di un argomento in un canale con audio disattivato o riattivare l'audio di un argomento in un canale con audio disattivato. Per saperne di più.", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip ha bisogno di inviare e-mail per confermare gli indirizzi degli utenti e inviare notifiche.", "Zulip needs your permission to enable desktop notifications.": "Zulip ha bisogno del tuo permesso per abilitare le notifiche desktop.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Le traduzioni di Zulip sono fornite dalla nostra straordinaria comunità di traduttori volontari. Se desideri aiutare, consulta le linee guida per la traduzione di Zulip.", "[Configure]": "[Configura]", - "[Disable]": "[Disabilita]", - "[More…]": "[Di più…]", "[Quoting…]": "[Citando…]", - "[Unset]": "[Non settato]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "e {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "torna ai canali", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "non si applica a moderatori e amministratori", "group direct messages with {recipient}": "raggruppare i messaggi diretti con {recipient}", "he/him": "lui/lui", - "in 1 hour": "fra 1 ora", - "in 20 minutes": "fra 20 minuti", - "in 3 hours": "fra 3 ore", "invisible mode off": "modalità invisibile disattivata", "leafy green vegetable": "Verdura a foglia verde", "marketing": "marketing", "more conversations": "Altre conversazioni", "more topics": "Altri argomenti", - "or": "o", "she/her": "lei/lei", "they/them": "loro/loro", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Fatto! {N} messaggi contrassegnati come letti.} many {Fatto! {N} messaggi contrassegnati come letti.} other {Fatto! {N} messaggi contrassegnati come letti.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} giorni fa", "{full_name} is typing…": "{full_name} sta scrivendo…", "{hours} hours ago": "{hours} ore fa", - "{items_selected} selected": "{items_selected} selezionato", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# messaggio} many {# messaggi} other {# messaggi}} will remain in the current topic.", "{minutes} min to edit": "{minutes} minuti per modificare", "{minutes} minutes ago": "{minutes} minuti fa", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Questo messaggio è stato leggere da {num_of_people} persona:} many {Questo messaggio è stato leggere di {num_of_people} persone:} other {Questo messaggio è stato letto da {num_of_people} persone:}}", "{seconds} sec to edit": "{seconds} secondi per modificare", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} ora locale", "{username} [said]({link_to_message}):": "{username} [ha scritto]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} ha reagito con {emoji_name}" diff --git a/locale/ja/LC_MESSAGES/django.po b/locale/ja/LC_MESSAGES/django.po index bf07e882f4..45f747c627 100644 --- a/locale/ja/LC_MESSAGES/django.po +++ b/locale/ja/LC_MESSAGES/django.po @@ -19,9 +19,9 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" -"Last-Translator: Aoi Okubo, 2023\n" +"Last-Translator: oribe1115, 2023\n" "Language-Team: Japanese (http://app.transifex.com/zulip/zulip/language/ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -29,46 +29,47 @@ msgstr "" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "ゲストに許可しない" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "無効な組織" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "公開ストリーム" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "非公開ストリーム" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "ダイレクトメッセージ" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "グループのダイレクトメッセージ" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "不明なチャート名: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "開始時刻が終了時刻より遅いです。 開始:{start}、終了:{end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "解析用データが利用できません。サーバー管理者に連絡してください。" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "不正なパラメーター" @@ -129,29 +130,31 @@ msgid "" msgstr "{num_invites} ユーザーを招待するのに十分な 、Zulipライセンスが残っていません。" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "少なくとも {} 人分の請求書を作成する必要があります。" +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "{}ライセンスを超える請求書は、このページから処理できません。 アップグレードを完了するには、{}にお問い合わせください。" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "エラーが発生しました。{email} に問い合わせてください。" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "エラーが発生しました。ページを再読み込みしてください。" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "エラーが発生しました。少し待ってからもう一度試してください。" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -183,7 +186,7 @@ msgstr "プランを更新できません。このプランは終了し、新し msgid "Unable to update the plan. The plan has ended." msgstr "プランを更新できません。このプランは終了しました。" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -199,14 +202,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "現在の支払い期間のライセンスは下げられません" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "変更するものがありません" @@ -218,7 +221,7 @@ msgstr "" msgid "Session not found" msgstr "セッションが見つかりません" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "請求管理者または組織オーナーである必要があります。" @@ -268,7 +271,7 @@ msgid "" msgstr "\n予期しないエラーの場合は、サポートにお問い合わせください。" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "内部のサーバーエラー" @@ -570,9 +573,9 @@ msgstr "請求状況" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -590,9 +593,9 @@ msgstr "料金設定を見る" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "セルフホストZulip" @@ -602,9 +605,9 @@ msgstr "セルフホストZulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "スポンサーシップのご提案" @@ -867,51 +870,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "%(identity_provider)sでサインアップ" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "メールアドレスを承認" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "登録ありがとうございます!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "まだメールが届きませんか?再送しますか?" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "念のため、迷惑メールフォルダーをご確認ください。" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Zulipに接続できません" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "更新は遅れる場合があります。" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "すぐに再試行します…" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "いますぐ" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "メッセージ" @@ -1159,6 +1162,159 @@ msgstr "一般ユーザー" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Zulipへようこそ!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "組織のURL:%(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "LDAPアカウントを使用してログインしてください" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "Zulip上の%(realm_name)s:新しい組織の詳細" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "Zulip上の%(realm_name)s:新しいアカウントの詳細" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Zulip組織 %(realm_name)s に参加しました。" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1166,6 +1322,39 @@ msgstr "" msgid "Hi," msgstr "こんにちは、" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "この変更をリクエストしていない場合は、すぐに %(support_email)s までご連絡ください。" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "もしこの変更を要求していない場合は、すぐに%(support_email)sまでお問い合わせください。" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1179,23 +1368,10 @@ msgstr "%(realm_uri)sのZulipアカウントのメールアドレスを%(old_ema msgid "Confirm email change" msgstr "メールアカウントの変更を確認" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "この変更をリクエストしていない場合は、すぐに %(support_email)s までご連絡ください。" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "新しいメールアドレスを確認" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "もしこの変更を要求していない場合は、すぐに%(support_email)sまでお問い合わせください。" +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1249,17 +1425,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1364,225 +1529,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "あなたのメール アドレス %(email)s には、%(external_host)s がホストする以下のZulip組織アカウントがあります:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Zulipへようこそ!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "組織のURL:%(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "LDAPアカウントを使用してログインしてください" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "Zulip上の%(realm_name)s:新しい組織の詳細" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "Zulip上の%(realm_name)s:新しいアカウントの詳細" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Zulip組織 %(realm_name)s に参加しました。" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "ショートトピックの例" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Zulipへ移動" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1667,14 +1613,14 @@ msgstr "この招待は2日後に有効期限が切れます。有効期限が #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1706,21 +1652,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1728,21 +1698,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1785,29 +1755,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nあなたがメール通知にメッセージ内容を表示しないように設定されているため、このメールにメッセージの内容は含まれていません。\n%(alert_notif_url)s で詳細を確認してください。\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nこのメールに返信しないでください。このZulipサーバーはメール受信をするように設定されていません。ヘルプ:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "メール設定を管理:" @@ -1970,6 +1940,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1998,6 +1976,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "ショートトピックの例" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Zulipへ移動" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2386,7 +2436,7 @@ msgid "Incoming webhooks" msgstr "Incoming webhook" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "非アクティブなBot" @@ -2886,292 +2936,295 @@ msgid "" " " msgstr "\n またはZulip デスクトップアプリを使用することができます。\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "登録" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user}がZulipに登録しました。(合計:{user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user}はZulipへの招待を受け入れました" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "不正な順序マッピング" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "フィールドID {id} が見つかりませんでした" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "不正なデフォルトストリームグループ名:'{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "デフォルトストリームグループ名が長すぎます(最大{}文字)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "デフォルトストリームグループ名'{}'がNULL文字 (0x00) を含んでいます。" +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "不正なデフォルトストリームグループ:{}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}'はデフォルトストリームなので'{group_name}'に追加できません" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "デフォルトストリームグループ「{group_name}」は存在します" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "ストリーム「{stream_name}」はデフォルトストリームグループ「{group_name}」に存在します" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "ストリーム「{stream_name}」はデフォルトストリームグループ「{group_name}」に存在しません" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "デフォルトストリームグループはすでに「{}」と名前がつけられています" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "デフォルトストリームグループ「{}」はすでに存在します" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "ユーザーの安全のため、1日に送信可能な招待数には制限があります。制限に達したため、招待状を送信できませんでした。" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "あなたのアカウントはこの組織への招待を作成するには新しすぎます。組織管理者または経験のあるユーザーにお問い合わせください。" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "いくつかのメールアドレスが検証されていないため、招待を送信しませんでした。" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "誰も招待することができません" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "これらのアドレスの中にはZulipをすでに使用している人がいたため、その人には招待を送信しませんでした。他の人には招待を送信しました。" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "変更するものがありません" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "ダイレクトメッセージはストリームに移動できません" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "ダイレクトメッセージではトピックを作成できません" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "トピック編集がない不正なpropagate_modeです" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "ストリームの変更中にメッセージ内容を変更できません" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "ウィジェットを編集出来ません。" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user}がこのトピックを解決済みにしました" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user}がこのトピックを未解決にしました" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "{user}がこのトピックを{new_location}に移動しました" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "{user}がメッセージを{new_location}に移動しました" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "{user}がこのトピックを{old_location}に移動しました" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{user}が{changed_messages_count}件のメッセージを{old_location}からここに移動しました。" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "組織のメッセージ編集を禁止しました" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "このメッセージを編集する権限がありません" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "このメッセージを編集できる時間制限が過ぎました" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "このストリームでワイルドカードメンションを使用する権限がありません。" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "このメッセージを移動する権限がありません" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "ストリームへのアクセス権がないため、このメッセージを移動できません" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "不正なフラグ:'{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "フラグは編集不可です:'{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "不正なメッセージフラグ操作:'{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "不正なメッセージ" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "メッセージをレンダリングできません" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "ちょうど一つのストリームを期待しています" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "ストリームのデータータイプが不正です" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "受信者のデータータイプが不正です" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "受信者リストはメールアドレスかユーザーIDのどちらかを含むことができますが、両方を含むことはできません。" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "あなたのBot「{bot_identity}」がストリームID「{stream_id}」にメッセージを送ろうとしましたが、そのIDのストリームはありません。" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "あなたのBot「{bot_identity}」がストリーム「{stream_name}」にメッセージを送信しようとしましたが、そのストリームはありません。[ここ]({new_stream_link})をクリックして作成してください。" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "あなたのBot「{bot_identity}」がストリームID「{stream_name}」にメッセージを送信しようとしました。ストリームは存在しますがフォロワーがいません。" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "この組織では、ダイレクトメッセージが無効化されています。" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "この組織ではトピックが必須です" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "ウィジェット:APIプログラマは不正なJSONを送信しました" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "ウィジェット:{error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "リアクションはすでに存在します" - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "この名前のカスタム絵文字はすでに存在します" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3182,11 +3235,11 @@ msgstr "" #: zerver/actions/scheduled_messages.py:161 msgid "Scheduled message was already sent" -msgstr "" +msgstr "予約メッセージが送信されました" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3205,18 +3258,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3225,38 +3292,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name}がストリーム「{old_stream_name}」を「{new_stream_name}」に名前変更しました。" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "説明がありません。" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "以前の説明" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "新しい説明" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "永久に" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3266,56 +3333,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "不正なユーザーID:{}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "ユーザーグループ「{}」はすでに存在します。" +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "このAPIはincoming webhookボットに利用できません。" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "アカウントはこのサブドメインに関連付けられていません" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "このエンドポイントはボットからのリクエストを受け付けません。" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "サーバー管理者である必要があります" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "権限が足りません" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "このエンドポイントはHTTPのベーシック認証を必要とします。" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "不正なベーシック認証の認証ヘッダー" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Basic認証の認証ヘッダがありません" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhookボットはwebhookだけにアクセスできます" @@ -3330,95 +3400,101 @@ msgstr "あなたのアカウント{username}は無効化されました。再 msgid "The password is too weak." msgstr "パスワードが弱すぎます" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "サブドメインは3文字以上必要です。" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "サブドメインは '-' で始まる、もしくは終わることができません。" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "サブドメインには小文字と数字と '-' だけが使えます。" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "サブドメインは利用できません。別のものを選択してください。" +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "本物のメールアドレスを使ってください。" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "{email} で参加しようとしている組織が存在しません。" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "組織の管理者から {email} を招待してもらうようにしてください。" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "あなたのメールアドレス {email} はこの組織のアカウントに登録できるドメインではありません。" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "この組織では「+」が含まれるメールアドレスは許可されていません。" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "全てのZulipライセンスが使用中のため、この組織には現在、新規の参加ができません。招待者にライセンス数の追加を依頼してから、再度お試しください。" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "新しいパスワード" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "新しいパスワードの確認" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "トークン" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "最大10個のメールアドレスを入力してください。" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Zulip組織が見つかりませんでした。" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "不正なメールアドレス:{}" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3482,31 +3558,31 @@ msgstr "サブドメインは '-' で始める、または終えることがで msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "ドメインには文字や数字と '.' と '-' だけが使えます。" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "タイムスタンプは負数であってはなりません" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "トピックはNULLバイトを含んではなりません" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "ストリームメッセージにはちょうど一つのストリームIDを指定する必要があります" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "下書きが存在しません" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Zulipを開いてネタバレを表示する" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip通知" @@ -3539,166 +3615,166 @@ msgstr "アカウントはすでにあります" msgid "Account has been deactivated." msgstr "アカウントは無効化されました" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "絵文字「{}」は存在しません" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "不正なカスタム絵文字" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "不正なカスタム絵文字名" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "このカスタム絵文字は無効化されました" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "不正な絵文字コード" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "不正な絵文字名" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "不正な絵文字種別" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "組織管理者か絵文字の作者である必要があります" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "絵文字名が入力されていません" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "イベントキューを割り当てることができませんでした" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "ログインしていません: API 認証かユーザーログインが必要です" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "ストリーム「{stream}」は存在しません" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "IDが「{stream_id}」のストリームは存在しません" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "組織オーナー" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "ユーザー" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "唯一の{entity}を無効化できません" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "不正なMarkdown include文:{include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API使用量が制限を超えました" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "不正なJSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "組織メンバーである必要があります" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "組織管理者である必要があります" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "組織オーナーである必要があります" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "ユーザー名かパスワードが間違っています" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "アカウントは無効化されています" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "組織は無効化されました" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "この組織ではパスワード認証が無効化されています" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "あなたのパスワードは無効化され、リセットが必要です" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "不正なAPIキー" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "不正な形式のAPIキー" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "「{event_type}」イベントは現在{webhook_name} Webhookでサポートされていません。" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "不正なサブドメイン" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "アクセスが拒否されました" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3706,6 +3782,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "リアクションはすでに存在します" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "リアクションが存在しません" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitter ユーザー名" @@ -3747,8 +3831,8 @@ msgid "Settings" msgstr "設定" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "設定へ移動して通知・表示設定を変更します" +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3760,264 +3844,272 @@ msgid "" "and give it a go!" msgstr "ここをクリックして新しい会話を開始。トピックを入力(2~3語が望ましい)して始めましょう" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "インテグレーションフレームワーク" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "継続的インテグレーション" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "顧客サポート" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "デプロイ" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "エンターテイメント" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "コミュニケーション" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "財務" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "人事" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "マーケティング" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "その他" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "監視" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "プロジェクト管理" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "生産性" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "バージョン管理" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "メッセージを入力する必要があります" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "メッセージにNULL文字を含んではいけません" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "演算子 {} はサポートされていません" +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "不正な絞り込みオペレーター: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "引数'anchor'がありません" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "不正なアンカー" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "初めてZulipを使用する場合は、[入門ガイド]({getting_started_url}) をご覧ください!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "こんにちは、そしてZulipへようこそ" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "これは自分からのダイレクトメッセージです。Welcome Bot" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "使用を始めるためのお手伝いもできます!このメッセージ上のどこかをクリックするか「r」を押して返信してください。" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "いくつかのメッセージを理解できました:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "[プロフィール設定](#settings/profile)で[プロフィール画像](/help/change-your-profile-picture)の追加や、[プロフィール情報](/help/edit-your-profile)の編集ができます。" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "[表示設定](#settings/display-settings)に移動して、[ライトモードとダークモードを切り替える](/help/dark-theme)、[お気に入りの絵文字テーマを選ぶ](/help/emoji-and-emoticons# change-your-emoji-set)、[言語を変更する](/help/change-your-language)、その他の機能でZulipを調整できます。" +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Zulipではストリームで、[誰がメッセージを受け取るか決める](/help/streams-and-topics)ことができます。これは他のチャットサービスでの「チャンネル」に該当します。" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[ストリームを閲覧してフォロー](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "ごめんなさい!メッセージを理解できませんでした。次のいずれかのコマンドを試してみてください。" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "これはプライベートストリームです。プライベートストリームはストリーム名の横の鍵アイコンで識別されます。" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "プライベートストリームはメンバーだけに表示されます。" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "このストリームを管理するには[ストリーム設定]({stream_settings_url})に移動して`{initial_private_stream_name}`でクリックしてください。" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "これはトピック `topic demonstration`が設定されたストリーム#**{default_notification_stream_name}** 上のメッセージです。" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "トピックは会話を整理する軽量な手段です。" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "トピックについて[ストリームとトピック]({about_topics_help_url})でさらに学べます" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "これはトピック `泳いでいる亀`が設定されたストリーム#**{default_notification_stream_name}** 上のメッセージです。" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4032,669 +4124,758 @@ msgstr "レスポンスが不正なJSONです" msgid "Invalid response format" msgstr "不正なレスポンスのフォーマットです" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "転送サービスへの不正なGCMオプションです: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "転送サービスへの不正なGCMオプションです: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "トークンがありません" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name}があなたにメンションしました:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name}が全員にメンションしました:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "このクエリーを許可されていないユーザーです" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}'はZulipを使っていません。" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "組織の外部にダイレクトメッセージは送信できません。" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "プッシュ通知転送サービスエラー:{}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "引数「{var_name1}」と「{var_name2}」を決定できませんでした" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "'{var_name}' 引数がありません" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "'{var_name}' の不正な値: {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "不正なペイロード" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "引数「{}」は正しいJSONではありません。" +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" -msgstr "" +msgstr "予約メッセージがありません" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip アカウントセキュリティー" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "組織管理者だけがこのストリームに送信できます。" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "組織管理者とモデレーターだけがこのストリームに送信できます。" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "ゲストはこのストリームに送信できません。" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "新しいメンバーはこのストリームに送信できません。" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "ストリーム「{}」に送信する権限がありません。" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "「stream」を指定してください" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "「stream」か「stream_id」のどちらかを選択してください。" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "無効なストリーム ID" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "ストリーム名「{}」はすでに使用されています。" +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "不正なストリーム名「{}」" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "ストリーム(たち)({})が存在しません" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Web公開ストリームは利用できません" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "IDが「{}」のデフォルトストリームグループは存在しません" +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "ストリーム名を入力してください" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "ストリーム名が長すぎます(制限:{}文字)" - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "トピックを入力してください" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "このストリームではフォロワーデータを利用できません" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "プライベートストリームのフォロワーは取得できません" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name}が真偽値でありません" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name}が日付ではありません" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name}は辞書でありません" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name}が浮動小数点数ではありません" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} は小さすぎます" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name}が整数でありません" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} は大きすぎます" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name}がリストでありません" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "不正な{var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name}が長すぎます(制限:{max_length}文字)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name}が文字列でありません" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "アップロードが組織の上限アップロード容量を超えています。" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "画像をデコードできません。画像ファイルをアップロードしましたか?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "画像サイズが制限を超えています。" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "不明なアニメーション画像形式です" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "不正なユーザーグループ" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "無効なユーザーグループID: {}" - -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" + +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "名前が長すぎます!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "名前が短すぎます!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "名前に不正な文字があります!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "不正なフォーマット" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "名前は使用中です" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "利用できない名前またはユーザー名" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "不正なインテグレーション「{}」" +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "設定パラメーターがありません:{}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "不正な{} 値 {}({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "不正な設定データー" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "不正なボット種別" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "不正なインターフェース種別" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "不正なユーザーID:{}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "ボットが存在しません" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "ユーザーが存在しません" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "ユーザーは無効化されています" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name}が文字列でありません" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item}は空白であることはできません" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "不正な{var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name}が長すぎます(制限:{max_length}文字)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name}は不正な長さ {length}です。{target_length}である必要があります" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name}が日付ではありません" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name}が整数でありません" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} は小さすぎます" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} は大きすぎます" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name}が浮動小数点数ではありません" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name}が真偽値でありません" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name}が正しい16進カラーコードでありません" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name}がリストでありません" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container}はちょうど{length}のアイテムを持つべきです" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name}は辞書でありません" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{var_name}にはキー {key_name} がありません" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "予期しない引数:{}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name}が許可された型でありません" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value}が不正です)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name}がURLでありません" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "{item}は空白であることはできません" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "{value}は{field_name}の正しい選択肢でありません" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name}が文字列か整数のリストでありません" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name}が文字列か整数でありません" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name}が見つかりません" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "HTTPイベントヘッダー「{header}」がありません" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "{} Webhookはミリ秒単位の時間を期待します" +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "zcommandには先頭にスラッシュが必要です" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "コマンドがありません:{}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRFエラー:{reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "ストリームイベント" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "絵文字名に不正な文字" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "pygments言語に不正な文字があります。" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "管理者・モデレーター・メンバー・ゲスト" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "管理者・モデレーター・メンバー" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "管理者・モデレーター" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "管理者限定" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "誰も" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "組織オーナー" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "組織の管理者" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "モデレータ" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "メンバー" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "ゲスト" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web公開" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "パブリック" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "プライベート・履歴を共有" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "非公開・履歴を保護" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "公開・履歴を保護" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "ストリーム内のすべてのユーザーが投稿可能" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "組織の管理者のみ投稿可能" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "組織の管理者とモデレーターのみが投稿できます。" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "組織の正式メンバーのみ投稿可能" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode絵文字" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "カスタム絵文字" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip拡張絵文字" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "IDが{}のユーザーは無効化されています" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "IDが{}のユーザーはBotです" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "オプションのリスト" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "人物ピッカー" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "ショートテキスト" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "ロングテキスト" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "日付ピッカー" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "リンク" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "外部赤雲tの" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "不明なIPアドレス" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "不明なOS" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "不明なブラウザ" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "'queue_id' 引数がありません" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "'last_event_id' 引数がありません" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "{event_id}より新しいイベントはすでにpruneされています。" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "イベント {event_id}はこのキューに存在しません" @@ -4762,89 +4943,123 @@ msgstr "そのラベルのフィールドはすでに存在します" msgid "Default custom field cannot be updated." msgstr "デフォルトカスタムフィールドは更新できません" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "エンドポイントはプロダクションで利用できません" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackendは有効でありません" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "不明なホットスポット:{}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "メールアドレスを指定してください。" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "IDが{}のストリームは存在しません。招待は送信されませんでした。" - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "そのような招待がありません" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "この組織のメッセージの編集履歴は無効です" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "このメッセージを削除する権限がありません" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "このメッセージを削除できる時間が過ぎました" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "メッセージはすでに削除されています" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "リクエストされたメッセージが多すぎます(最大 {})" +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "「{}」というトピックがありません" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "送信者がいません" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "受信者のユーザーIDでミラーリングは認められていません" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "不正なミラーリングされたメッセージ" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr ミラーリングはこの組織で許可されていません" @@ -4860,27 +5075,28 @@ msgstr "ユーザーはすでにミュートされています" msgid "User is not muted" msgstr "ユーザーはミュートされていません" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "プレゼンスはBotユーザーでサポートされていません" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "{user_id_or_email}のプレゼンスデーターがありません" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "クライアントは新しい値を渡しませんでした" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "不正なステータス:{}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4896,37 +5112,37 @@ msgid "" "emoji_code" msgstr "これらのうち1つ以上の引数が渡されるべきです:emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "リアクションが存在しません" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "この組織では既読表示が無効化されています。" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "不正な言語 {}" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "有効な認証方法が必要です。" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "不正なvideo_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "不正なgiphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "不正なドメイン: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4938,42 +5154,43 @@ msgstr "ドメイン「{domain}」はすでにあなたの組織の一部です" msgid "No entry found for domain {domain}." msgstr "ドメイン「{domain}」の項目が見つかりませんでした" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "ファイルは1つだけアップロードしてください。" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "アップロードされたファイルは許可されている上限の{}MiBよりも大きいです。" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "レートリミットを超えています" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "{email}に手動エクスポートを要求してください" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "不正なデーターエクスポートID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "エクスポートはすでに削除されています" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4981,7 +5198,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "アイコンは1つだけアップロードしてください。" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifierが見つかりません" @@ -4989,107 +5206,100 @@ msgstr "Linkifierが見つかりません" msgid "You must upload exactly one logo." msgstr "ちょうど1つのロゴをアップロードするべきです" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "不正なプレイグラウンド" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "'{principal}' のクエリーを許可されていないユーザーです" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "プライベートストリームはデフォルトに設定できません" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "\"new_description\"か\"new_group_name\"を指定すべきです" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "\"op\"の値が不正です。\"add\"または\"remove\"を指定してください。" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "デフォルトストリームはプライベートに設定できません。" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "同じストリーム名です!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "なにもしません。\"add\"か\"delete\"のうち一つ以上を指定してください。" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} が、あなたを{stream_name}のフォロワーに追加しました。" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name}があなたを以下のストリームのフォロワーに追加しました:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "ストリーム({stream_name})にアクセスできません。" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "ほかのZephyrミラーリングユーザーをプライベートストリームのみに招待できます" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name}が以下のストリームを作成しました:{stream_str}" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name}が新しいストリーム「{stream_str}」を作成しました" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "新しいストリーム" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "不明なサブスクリプションプロパティー:{}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "ストリームID{}をフォローしていません" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "不正なサブメッセージのJSON" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

このファイルの表示を許可されていません。

" @@ -5105,97 +5315,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "ユーザーがダイレクトメッセージでの「入力中」表示を無効化しています" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

ファイルがありません。

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "不正なトークン" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "不正なファイル名" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "ファイルを指定してアップロードしてください。" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "一度に1つのファイルだけアップロードできます" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "新しいデータがありません。" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "ユーザー {user_id} はすでにこのグループのメンバーです。" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "このユーザーグループにはメンバー '{}'がいません" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "この組織でアバターの変更は無効化されています" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "この組織のメールアドレス変更は無効です。" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "不正なdefault_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "不正な通知音 '{}'" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "ZulipのパスワードはLDAPで管理されています" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "パスワードが間違っています!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "試行回数が多すぎます。{}秒後に再試行してください。" +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "新しいパスワードが弱すぎます" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "アバターは1つだけアップロードしてください。" @@ -5242,6 +5463,10 @@ msgstr "不正な埋め込みBot名。" msgid "Username already in use" msgstr "ユーザー名は使用済みです" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5252,8 +5477,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "使い捨てメールアドレスはこの組織で許可されていません。" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "メールアドレス「{}」はすでに使用されています" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5271,27 +5497,27 @@ msgstr "不正なZoomセッション識別子" msgid "Invalid Zoom credentials" msgstr "不正なZoom認証情報" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Zoomコールの作成に失敗しました" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5311,28 +5537,28 @@ msgstr "不正なKerberosキャッシュ" msgid "We were unable to set up mirroring for you" msgstr "ミラーリングを設定できませんでした" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "不正なペイロード" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "不明なwebhookリクエスト" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "トピックを入力してください" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "コンテンツを入力してください" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "不正なJSON入力" @@ -5351,7 +5577,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5359,19 +5585,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Pivotalのペイロードを処理できません" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "エラー: channels_map_to_topics パラメーターに0と1は設定できません" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Slackからのメッセージ" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "不明なWordPress Webhookアクション:{}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5388,47 +5615,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "正しいZulipサーバーでAPIキーを検証する必要があります" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "不正なトークン種別" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{}は有効なホスト名でありません" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "不正なプロパティー {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "データが破損しています" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "不正なデータ" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "パスワードをリセットする必要があります" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "id_token パラメータがありません" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "不正なOTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "mobile_flow_otp とdesktop_flow_otp を同時に使用できません。" diff --git a/locale/ja/translations.json b/locale/ja/translations.json index 46d5b53d3d..792cccf815 100644 --- a/locale/ja/translations.json +++ b/locale/ja/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(非表示)", "(no description)": "(説明がありません)", "(no topic)": "(トピックなし)", + "(or )": "", "(you)": "(あなた)", "({message_retention_days} days)": "({message_retention_days} 日)", "/dark (Switch to the dark theme)": "/ダーク (ダークモードに切り替え)", @@ -35,10 +36,10 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name}はこのストリームをフォローしていないため、あなたがフォロワーに追加しない限り通知されません。", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "登録する", - "Click here to learn about exporting private streams and messages.": "ここをクリックしてプライベートストリームとメッセージをエクスポートする方法について確認する", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", - " to send": "", + " to send": " で送信", " will have the same properties as it did prior to deactivation, including role, owner and stream subscriptions.": "", " will have the same role, stream subscriptions, user group memberships, and other settings and permissions as they did prior to deactivation.": "", "A Topic Move already in progress.": "トピックはすでに移動中です", @@ -82,15 +83,18 @@ "Add alert word": "キーワードを追加", "Add all users": "全てのユーザーを追加", "Add another user...": "他のユーザーを追加", + "Add audio call": "", "Add code playground": "コードプレイグラウンドを追加", + "Add default streams": "", + "Add email": "", "Add emoji": "絵文字を追加", "Add emoji reaction": "絵文字でリアクション", "Add extra emoji for members of the {realm_name} organization.": "{realm_name}組織のメンバー絵文字追加", "Add global time": "世界時間を追加", "Add linkifier": "設定を追加", "Add members": "メンバーを追加", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "メンバーを追加", - "Add new default stream": "新しいデフォルトのストリームを追加", "Add new user group": "新規ユーザーグループを追加", "Add one or more users": "ユーザーを追加", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "フォロワーを追加します。ユーザーグループまたは #streamname を使用して、フォロワーを一括で追加できます。", "Add task": "タスクを追加", "Add video call": "ビデオ通話を追加", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "追加に成功しました!", "Added successfully.": "追加が完了しました!", "Administrator": "管理者", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "全て", "All direct messages": "すべてのダイレクトメッセージ", + "All groups": "", "All messages": "すべてのメッセージ", "All messages including muted streams": "ミュートしたストリームを含むすべてのメッセージ", "All streams": "すべてのストリーム", @@ -136,9 +142,11 @@ "Allow subdomains": "サブドメインを許可", "Allowed domains": "許可されたドメイン", "Allowed domains: {domains}": "許可されているドメーン: {domains}", + "Already members:": "", "Already not subscribed.": "すでにフォローしていません。", "Already subscribed to {stream}": "すでに{stream}をフォローしています", "Already subscribed users:": "フォロワー:", + "Already subscribed.": "", "Always": "常時", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "APIキーはプログラムからZulipアカウントにアクセスするのに利用できます。あなたのAPIキーを知っている人は、だれでもあなたのメッセージを読んだり、メッセージを送信したりできて、Zulip上であなたになりすませます。そのため、APIキーはパスワードと同じぐらい注意して管理するようにしてください。
もしあなたのアカウントにアクセスする必要のない用途であれば、ボットを作成して、ボットのアカウントとそのAPIキーを使ってZulip APIにアクセスすることを推奨します。", "An hour ago": "1時間前", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "ストリームをアーカイブする", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "ストリームをアーカイブすると、すぐに全員のフォローが解除されます。この操作は元に戻せません。", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "続行しますか?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "ストリーム「{stream_name}」を作成して、{count}人のユーザーをフォロワーに追加しますか?", "Are you sure you want to deactivate this organization?": "本当にこの組織を停止状態にしますか?", @@ -162,8 +171,9 @@ "Are you sure you want to resend the invitation to ?": "本当にへの招待をもう一同送りますか?", "Are you sure you want to revoke the invitation to {email}?": "本当に{email}への招待を無効化しますか?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", - "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", + "Are you sure you want to unstar all messages in ? This action cannot be undone.": "本当に内のすべてのメッセージからスターを外しますか?この操作はもとに戻すことができません。", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "本当にすべてのメッセージからスターを外しますか?この操作はもとに戻すことができません。", "Ask me later": "あとで確認する", "At the office": "オフィスで", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Gravatarのプロフィール画像", "Back to streams": "ストリームに戻る", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "請求書", @@ -190,8 +201,11 @@ "Bot owner": "ボットの所有者", "Bot type": "ボット種別", "Bots": "ボット", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "ストリームを探す", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "ビジネス", "Busy": "忙しい", "By deactivating your account, you will be logged out immediately.": "アカウントを無効にすると、すぐにログアウトされます。", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "クリックして閲覧かダウンロード", "Close": "閉じる", "Close modal": "この画面を閉じる", @@ -232,7 +248,7 @@ "Commuting": "通勤中", "Compact": "最小", "Complete": "完了", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "メッセージを作成", "Compose your message here": "ここでメッセージを作成", "Compose your message here...": "ここでメッセージを作成", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "メッセージの送信時に顔文字を絵文字に変換する(:)は😃に変換されます)", "Cookie Bot": "Cookieボット", "Copied!": "コピーしました!", + "Copy URL": "", "Copy address": "", "Copy and close": "コピーして閉じる", "Copy code": "コードをコピー", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "現在、すべてのメッセージを表示しています。", "Currently viewing the entire stream.": "", "Custom": "カスタム", + "Custom URL": "", "Custom emoji": "カスタム絵文字", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "無効", "Deactivated users": "無効なユーザー", "December": "12月", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "コードブロックの既定の言語", "Default streams": "デフォルトのストリーム", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "デフォルトのユーザー設定", "Default view": "デフォルト表示", @@ -314,19 +334,21 @@ "Delete": "削除", "Delete alert word": "キーワードを削除", "Delete all drafts": "全ての下書きを削除", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "カスタムプロフィールフィールドを削除しますか?", "Delete data export?": "データエクスポートを削除しますか?", "Delete draft": "下書きを削除", "Delete file": "ファイルを削除", "Delete file?": "", + "Delete group": "", "Delete icon": "アイコンを削除", "Delete linkifier?": "リンク化設定を削除しますか?", "Delete logo": "ロゴを削除", "Delete message": "メッセージを削除", "Delete message?": "メッセージを削除しますか?", "Delete profile picture": "プロフィール画像を削除", - "Delete scheduled message": "", + "Delete scheduled message": "予約メッセージを削除", "Delete selected draft": "選択した下書きを削除", "Delete topic": "トピックを削除", "Delete {user_group_name}?": "{user_group_name}を削除しますか?", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "エクスポートにかかる時間は、組織の規模によって、数秒で完了する場合もあれば1時間かかる場合もあります。", "Deprecation notice": "非推奨の通知", "Description": "説明", + "Deselect draft": "", "Desktop": "デスクトップ", "Desktop & mobile apps": "デスクトップアプリとモバイルアプリ", "Desktop message notifications": "デスクトップでのメッセージ通知", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "メッセージの記述方法の詳細ドキュメント", "Detailed search filters documentation": "検索フィルターの詳細なドキュメント", "Direct message": "ダイレクトメッセージ", + "Direct message to me": "", "Direct messages": "ダイレクトメッセージ", "Direct messages and mentions": "ダイレクトメッセージとメンション", "Direct messages are disabled in this organization.": "この組織では、ダイレクトメッセージが無効化されています。", "Direct messages disabled": "ダイレクトメッセージが無効化されています", + "Disable": "", "Disable notifications?": "通知をオフにしますか?", "Disabled": "無効", "Discard": "破棄", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "表示の設定", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "全員を追加しますか?", + "Do you want to mark them all as read?": "", "Domain": "ドメイン", "Don’t allow disposable email addresses": "使い捨てメールアドレスでの登録を拒否する", "Download": "ダウンロード", @@ -383,12 +408,12 @@ "EDITED": "編集済", "Edit": "編集", "Edit #{stream_name}": "#{stream_name} を編集", - "Edit and reschedule message": "", + "Edit and reschedule message": "メッセージの編集と再予約", "Edit bot": "ボットを編集", "Edit custom profile field": "カスタムプロフィールフィールドの編集", "Edit linkfiers": "", "Edit message": "メッセージを編集", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "選択した下書きを編集", "Edit selected message or view source": "選択したメッセージを編集またはソースを表示", "Edit status": "ステータスを編集", @@ -398,7 +423,6 @@ "Edit your last message": "最後に作成したメッセージを編集", "Edit your profile": "プロフィールを編集", "Edit {group_name}": "{group_name}を編集", - "Edited ({last_edit_timestr})": "編集済み({last_edit_timestr})", "Edited by {full_name}": "{full_name}が編集", "Education (for-profit)": "教育(営利)", "Education (non-profit)": "教育(非営利)", @@ -461,6 +485,7 @@ "External account type": "外部アカウントタイプ", "External link": "外部リンク", "Failed": "失敗しました", + "Failed adding one or more streams.": "", "Failed to create video call.": "ビデオ通話の作成に失敗しました。", "Failed to generate preview": "プレビューの生成に失敗しました。", "Failed to upload %'{file}'": "%'{file}' のアップロードに失敗しました", @@ -485,11 +510,9 @@ "Filter exports": "エクスポートを検索", "Filter groups": "グループを検索", "Filter invites": "招待を検索", - "Filter languages": "言語を検索", "Filter linkifiers": "リンク化設定を検索", "Filter members": "メンバーを検索", "Filter muted users": "ミュートされたユーザをフィルター", - "Filter roles": "", "Filter streams": "ストリームを検索", "Filter subscribers": "フォロワーを検索", "Filter topics": "トピックをフィルター", @@ -500,6 +523,9 @@ "First message": "最初のメッセージ", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY援用", "GIPHY integration": "GIPHY機能", "General": "全般", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "招待リンクを作成", "Generate new API key": "新しいAPIキーを生成", @@ -542,14 +569,18 @@ "High contrast mode": "ハイコントラストモード", "Hint": "ヒント", "Hint (up to 80 characters)": "ヒント (80文字以下)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "人間", "Idle": "退席中", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "画像", "In a meeting": "会議中", "Inactive": "非アクティブ", "Inactive bots": "非アクティブなボット", + "Inbox": "", "Include DMs": "ダイレクトメッセージを含める", "Include content of direct messages in desktop notifications": "DM内容をデスクトップ通知に含む ", "Include message content in message notification emails": "通知メールにメッセージ内容を含める", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Incoming webhook はメッセージだけ送信できます。", "Initiate a search": "検索開始", "Insert new line": "改行", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "インテグレーション", "Interface": "インターフェース", "Invalid URL": "不正なURL", @@ -581,6 +614,8 @@ "Inviting...": "招待中...", "Italic": "斜体", "January": "1月", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "参加", @@ -599,8 +634,10 @@ "Last 30 days": "直近30日", "Last 6 months": "直近6か月", "Last active": "最終ログイン", + "Last edited {last_edit_timestr}": "", "Last message": "最後のメッセージ", "Last modified": "最後の編集", + "Last moved {last_edit_timestr}": "", "Learn more": "詳細", "Learn more about mentions here.": "メンションについて詳しくはこちら。", "Learn more about starring messages here.": "スター付けについて詳しくはこちら。", @@ -623,6 +660,7 @@ "Log out": "ログアウト", "Looking for our integrations or API documentation?": "", "MOVED": "移動しました", + "Main menu": "", "Manage bot": "", "Manage streams": "ストリームを管理", "Manage this bot": "このbotを管理", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "メンション", "Mentions": "メンション", - "Menu": "メニュー", "Menus": "メニュー", "Message #{stream_name}": "メッセージ #{stream_name}", "Message #{stream_name} > {topic_name}": "メッセージ #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "メッセージ {recipient_names}", "Message {recipient_name} ({recipient_status})": "メッセージ {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "モバイル", @@ -673,19 +712,19 @@ "Monday": "月曜日", "Monday at {time}": "", "Move all messages in {topic_name}": "", - "Move all messages in this topic": "すべてのメッセージをこのトピックに移動", + "Move all messages in this topic": "このトピック内のメッセージを移動", "Move message": "メッセージを移動する", "Move messages": "メッセージを移動する", "Move messages or topic": "メッセージまたはトピックを移動", "Move only this message": "このメッセージのみを移動する", "Move some messages?": "", - "Move this and all following messages in this topic": "このトピックとこれ以降のすべてのメッセージを移動する", + "Move this and all following messages in this topic": "このトピック内のこれ以降のメッセージを移動する", "Move topic": "トピックを移動", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "メッセージ移動", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "フォロワーに招待される必要があります。\n新しいフォロワーは、フォロー後に送信されたメッセージのみを閲覧できます。ただし、管理者以外のユーザーには表示されません。", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "フォロワーから招待される必要があります。\n新しいフォロワーは、過去のメッセージ履歴を閲覧できます。ただし、管理者以外のユーザーには表示されません。", + "Mute": "", "Mute stream": "ストリームをミュート", "Mute this user": "このユーザーをミュートする", "Mute topic": "トピックをミュート", @@ -734,38 +773,42 @@ "New password is too weak": "新しいパスワードが弱すぎます", "New stream announcements": "新しいストリームのお知らせ", "New stream message": "新しいストリームのメッセージ", + "New stream notifications": "", "New task": "新規タスク", "New topic": "新しいトピック", "New user announcements": "新しいユーザーのお知らせ", + "New user notifications": "", "Next message": "次のメッセージ", "Next unread direct message": "次の未読のダイレクトメッセージ", "Next unread topic": "次の未読のトピック", - "Next week": "来週", "No bots match your current filter.": "ボットがフィルターに一致しません。", + "No conversations match your filters.": "", "No custom emoji.": "カスタム絵文字がありません。", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "カレントフィルターにデフォルトのストリームが一致しません。", "No description.": "説明がありません。", + "No drafts selected": "", "No drafts.": "下書きがありません。", "No exports.": "エクスポートがありません。", "No invites match your current filter.": "検索に一致する招待が存在しません。", "No language set": "言語が設定されていません", "No linkifiers set.": "リンク化設定が存在しません", + "No matching results": "", "No matching users.": "一致するユーザーがいません", "No one has read this message yet.": "このメッセージを読んだユーザーはいません", "No owner": "オーナーが存在しません", "No playgrounds configured.": "設定完了のプレーグラウンドはありません。", "No restrictions": "制限なし", - "No scheduled messages.": "", - "No search results": "検索結果がありません", + "No scheduled messages.": "予約メッセージがありません。", "No search results.": "検索結果がありません", "No stream subscriptions.": "登録したメンバーはいません", "No streams": "ストリームがありません", "No topics are marked as resolved.": "解決済みのトピックはありません", - "No topics match your current filter.": "検索に一致するトピックが存在しません。", "No user group subscriptions.": "登録したメンバーはいません", "No user groups": "", "No user to subscribe.": "フォロワーがいません", "No users match your current filter.": "検索に一致するユーザーが存在しません。", + "No users to add.": "", "No, I'll catch up.": "いいえ、未読のメッセージを確認します。", "Nobody": "誰も", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "ストリームを通知する", "Notify this user by email?": "", "November": "11月", + "Numbered list": "", "October": "10月", "Old password": "古いパスワード", "Once you leave this group, you will not be able to rejoin.": "一度のこのストリームから抜けると、再度参加できません。", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "ストリームのメンバーのみが非公開ストリームにユーザーを追加することができます", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "このストリームのフォロワーのみがストリームの権限を変更できます。", "Open": "開く", "Open message menu": "メッセージメニューを開く", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "投稿者: {full_name}", + "Preferences": "", "Press > for list of topics": "> キーを押してトピックの一覧を表示", "Prevent users from changing their avatar": "ユーザーのプロフィール画像の変更を許可しない", "Prevent users from changing their email address": "ユーザーのメールアドレスの変更を許可しない", @@ -869,6 +915,7 @@ "Previous message": "前のメッセージ", "Privacy": "プライバシー", "Privacy settings": "プライバシー設定", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "非公開・履歴を保護", "Private, shared history": "プライベート・履歴を共有", "Profile": "プロフィール", @@ -883,6 +930,7 @@ "Reactivate bot": "ボットを再有効化", "Reactivate this bot": "このボットを再有効化", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "開封確認", "Read receipts are currently disabled in this organization.": "この組織では現在、既読表示が無効化されています。", @@ -930,9 +978,10 @@ "Saved as draft": "下書きとして保存", "Saved. Please reload for the change to take effect.": "保存しました。変更を適用するには、再読み込みしてください。", "Saving": "保存中", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", - "Schedule message": "", - "Scheduled messages": "", + "Schedule message": "メッセージ投稿を予約", + "Scheduled messages": "予約メッセージ", "Scroll down": "下へスクロール", "Scroll down to view your message.": "", "Scroll through streams": "ストリームをスクロール", @@ -948,10 +997,15 @@ "See how to configure email.": "メールを設定する方法を確認", "Select a stream": "", "Select a stream below or change topic name.": "以下のストリームを選択するか、トピック名を変更してください。", - "Select date and time": "日時を指定", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "絵文字を選択", "Select language": "言語を選択", + "Select stream": "", "Send": "送信", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "離席中のときはダイジェストメールを送信する", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "アップロードしてリンクした画像のプレビューを表示する", "Show starred message count": "スター付きメッセージの数を表示", "Show status text": "ステータス文を表示", + "Show unread counts for": "", "Show/change your API key": "自分のAPIキーを表示・変更", "Sign up": "登録", "Silent mentions do not trigger notifications.": "", @@ -999,10 +1054,11 @@ "Sort by estimated weekly traffic": "推定週間トラフィック量で並び替え", "Sort by name": "名前で並び替え", "Sort by number of subscribers": "フォロワー数で並び替え", + "Sort by unread message count": "", "Spoiler": "ネタバレ", "Star": "スター", "Star selected message": "選択したメッセージをスター付け", - "Star this message": "", + "Star this message": "メッセージにスターを付ける", "Starred messages": "スター付きメッセージ", "Start a new topic or select one from the list.": "新しいトピックかリスト内のトピックから始めましょう", "Start export of public data": "公開データを書き出す", @@ -1024,8 +1080,10 @@ "Subscribe": "購読", "Subscribe them": "フォロワーに追加", "Subscribe to/unsubscribe from selected stream": "選択したストリームをフォローまたは解除", + "Subscribe {full_name} to streams": "", "Subscribed": "購読済み", "Subscribed streams": "フォロー中のストリーム", + "Subscribed successfully!": "購読しました!", "Subscriber count": "フォロワー数", "Subscribers": "購読者", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "設定されたキーワードありません", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "古いバージョンのZulipサーバーが動作しているため、アップグレードする必要があります。", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Zulipの通知はこのように表示されます。", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "タイムゾーン", "Time's up!": "時間切れです!", "Tip: You can also send \"/poll Some question\"": "豆知識: 「/poll 投票内容」というコマンドも存在します。", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "複数行のコードブロックにシンタックスハイライトを適用するには、最初のバッククォートの後ろにPygmentsでのその言語の1つめのshort nameを追加してください。また、各行を半角スペース4つでインデントすることでもコードブロックにできます。", "To invite users, please increase the number of licenses or deactivate inactive users.": "ユーザーを招待するには、ライセンス数を増やすか、使用していないユーザーを無効にしてください.", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "今日", @@ -1112,7 +1170,6 @@ "Toggle subscription": "購読を切り替え", "Toggle the gear menu": "設定メニューを切り替え", "Toggle topic mute": "トピックのミュートを切り替え", - "Tomorrow": "明日", "Tomorrow at {time}": "", "Topic": "トピック", "Topic muted": "トピックミュート済", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "2要素認証", "Type": "タイプ", + "URL": "", + "URL for your integration": "", "URL pattern": "URL パターン", - "URL prefix": "URLプレフィックス", "URL template": "", "USERS": "ユーザー", "Uncheck all": "すべて選択解除", @@ -1139,6 +1197,7 @@ "Unmute this user": "ユーザーのミュートを解除", "Unmute topic": "トピックのミュートを解除", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "ストリームの固定を解除する", "Unread": "未読", "Unread count badge (appears in desktop sidebar and browser tab)": "未読件数バッジ (デスクトップサイドバーとブラウザータブに表示)", @@ -1148,7 +1207,7 @@ "Unstar all messages": "すべてのメッセージのスターを外す", "Unstar all messages in topic": "トピック内の全てのスターを外す", "Unstar messages in topic": "トピック内のメッセージのスターを外す", - "Unstar this message": "", + "Unstar this message": "メッセージからスターを外す", "Unsubscribe": "フォロー解除", "Unsubscribe from ": "のフォローを解除", "Unsubscribed successfully!": "フォローを解除しました", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "ダイレクトメッセージを表示", "View drafts": "下書きを表示", - "View edit history": "編集履歴を表示", + "View edit and move history": "", "View file": "ファイルを表示", "View in playground": "プレーグラウンドに表示", "View in {name}": "{name}に表示", @@ -1210,11 +1269,11 @@ "View profile": "プロフィールを見る", "View read receipts": "開封を確認", "View recent conversations": "", - "View scheduled messages": "", + "View scheduled messages": "予約メッセージを表示", "View stream": "ストリームを表示", "View stream messages": "ストリームのメッセージを表示", "View streams": "", - "View user card": "", + "View user card": "ユーザーカードを閲覧", "View your profile": "自分のプロフィールを表示", "Visual": "ビジュアル", "Visual desktop notifications": "ポップアップ通知", @@ -1227,9 +1286,10 @@ "Web-public": "Web公開", "Wednesday": "水曜日", "Week of {date}": "{date}の週", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "@allのような複数人へのメンションでメンバーに通知をするか", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "ストリームにアクセスできるユーザー", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "ユーザーグループの管理", "Who can create private streams": "非公開ストリームの作成", "Who can create public streams": "公開ストリームの作成", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Web公開ストリームの作成", "Who can delete their own messages": "各自のメッセージを削除できるメンバー", - "Who can invite users to this organization": "この組織へユーザー招待ができる人", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "ストリームに投稿できるユーザー", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "大規模なストリームで「@all/@everyone」のメンションを利用できる人", "Who can use direct messages": "ダイレクトメッセージの使用", @@ -1268,14 +1329,17 @@ "You and": "あなたと", "You and {display_reply_to}": "あなたと{display_reply_to}", "You and {recipients}": "メッセージ {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "現在、このストリームをフォローしていません。", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "あなたは既知の脆弱性が含まれている古いバージョンのZulip デスクトップアプリを使用しています。", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "このストリームをフォローしていませんし、まだだれも会話していません!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Markdown-ishの表の記法を作成できます。", "You can combine search filters as needed.": "検索フィルターは組み合わせて使うことができます。", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "このストリームでワイルドカードメンションを使用する権限がありません。", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "出力", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "をミュートしています", + "You have muted this topic": "", "You have no active bots.": "アクティブなボットが存在しません。", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "まだこの人たちとのダイレクトメッセージがありません", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "ミュートしたユーザーはいません", "You have not sent any direct messages to yourself yet!": "まだ自分宛のダイレクトメッセージを送信していません!", "You have not uploaded any files.": "ファイルをアップロードしていません。", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "メンションされたメッセージはありません!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "組織の管理者のみが、購読せずにストリームを作成することができます。", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "メールを送信するためにZephyrミラーリングを実行する必要があります!", "You searched for:": "検索履歴:", "You subscribed to stream ": "", "You type": "入力", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "このストリームをフォローしていません。他のユーザーがあなたのメッセージに返信しても、通知を受け取ることができません。", "Your API key:": "自分のAPIキー:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "ユーザのメールアドレスを確認・通知を送信するためにメールを送信する必要があります。", "Zulip needs your permission to enable desktop notifications.": "デスクトップ通知を有効にするために許可する必要があります。", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip の翻訳は、素晴らしいボランティア翻訳者のコミュニティによって提供されています。ご協力いただける方は「Zulip翻訳ガイドライン」をご覧ください。", "[Configure]": "[設定]", - "[Disable]": "[無効]", - "[More…]": "[さらに表示]", "[Quoting…]": "[引用中...]", - "[Unset]": "[未設定]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "ベータ", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1時間後に", - "in 20 minutes": "20分後に", - "in 3 hours": "3時間後に", "invisible mode off": "", "leafy green vegetable": "ホウレンソウ", "marketing": "経理部", "more conversations": "もっと会話を見る", "more topics": "もっとトピックを見る", - "or": "または", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {{N}件のメッセージを既読にしました}}", @@ -1373,18 +1443,18 @@ "{N, plural, one {Working… {N} message marked as read so far.} other {Working… {N} messages marked as read so far.}}": "{N, plural, other {更新中:{N}件のメッセージを既読にしました}}", "{N, plural, one {Working… {N} message marked as unread so far.} other {Working… {N} messages marked as unread so far.}}": "{N, plural, other {更新中:現在{N}件のメッセージを未読にしました}}", "{comma_separated_usernames} and {last_username} reacted with {emoji_name}": "", - "{date} at {time}": "{time}の{date}", + "{date} at {time}": "{date} {time}", "{days_old} days ago": "{days_old}日前", "{full_name} is typing…": "{full_name}が入力中…", "{hours} hours ago": "{hours}時間前", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "編集可能時間{minutes}分", "{minutes} minutes ago": "{minutes}分前", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {{num_of_people} 人がこのメッセージを読みました:}}", "{seconds} sec to edit": "{seconds}秒前", - "{user_time} local time": "", + "{server_jitsi_server_url} (default)": "", + "{user_time} local time": "現地時間 {user_time}", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "{username} が {emoji_name} で反応しました" } \ No newline at end of file diff --git a/locale/ko/LC_MESSAGES/django.po b/locale/ko/LC_MESSAGES/django.po index 664219a283..a464822e1b 100644 --- a/locale/ko/LC_MESSAGES/django.po +++ b/locale/ko/LC_MESSAGES/django.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: sung yong kim , 2021\n" "Language-Team: Korean (http://app.transifex.com/zulip/zulip/language/ko/)\n" @@ -30,46 +30,47 @@ msgstr "" "Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "허용되지 않은 손님 사용자" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "유효하지 않은 조직" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "공개 스트림" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "비공개 스트림" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "알수 없는 차트명:{}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "시작시간이 종료 시간 보다 늦습니다. 시작시간: {start}, 종료시간: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "이용가는한 분석 데이터가 없습니다. 서버 운영자에게 문의하세요." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "유효하지 않은 값들" @@ -130,29 +131,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "최소 {} 유저 이상에 대한 청구서여야 합니다." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "현재 페이지에서 {} licenses 이상의 인보이스에 대해서는 처리할수 없습니다. 업그레이드를 완료 하시려면, {} 로 연락 주세요." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "문제가 발생했습니다. {email}로 연락 주세요." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "무언가 잘못 되었습니다. 페이지를 새로고침해 주십시오." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "무언가 잘못 되었습니다. 몇 초간 기다린 후 다시 시도 해주세요." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -184,7 +187,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -200,14 +203,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -219,7 +222,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -269,7 +272,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "내부 서버 오류" @@ -571,9 +574,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -591,9 +594,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -603,9 +606,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -868,51 +871,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "%(identity_provider)s로 가입" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "가입해 주셔서 감사합니다!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "메일이 아직 없습니까? 우리는 다시 보낼 수 있습니다." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "만일을 위해 스팸 폴더를 확인하세요." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "지금 시도하기." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "메시지" @@ -1160,6 +1163,159 @@ msgstr "일반 사용자" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Zulip에 오신 것을 환영합니다!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1167,6 +1323,39 @@ msgstr "" msgid "Hi," msgstr "안녕하세요," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1180,22 +1369,9 @@ msgstr "" msgid "Confirm email change" msgstr "이메일 변경을 확인하세요" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1250,17 +1426,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1365,225 +1530,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Zulip에 오신 것을 환영합니다!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr " Zulip으로 가기" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1668,14 +1614,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1707,21 +1653,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1729,21 +1699,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1786,29 +1756,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1971,6 +1941,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1999,6 +1977,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr " Zulip으로 가기" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2387,7 +2437,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "대화형 봇" @@ -2887,292 +2937,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "필드 ID {id} 를 찾을 수 없습니다." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "당신의 계정이 이 조직에 초대를 보내기에는 너무 최근에 만들어졌습니다. 조직 관리자에게 문의하거나, 더 경험있는 사용자에게 물어보세요." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "일부 이메일은 확인되지 않았으므로 초대장을 보내지 않았습니다." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "우리는 누구도 초대할 수 없었습니다." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "그 중 일부 주소는 이미 Zulip을 사용하고 있으므로 초대장을 보내지 않았습니다. 우리는 다른 모든 사람들에게 초대장을 보냈습니다!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "변경 사항 없음" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "위젯들은 편집되지 않습니다." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "조직에서 메시지 편집을 중단시켰습니다." -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "이 메시지를 편집할 수있는 권한이 없습니다." -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "이 메시지를 편집하는데 시간 제한이 지났습니다." -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "당신은 이 스트림에서 중요한 언급을 사용하도록 허가받지 못 하였습니다." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "유효하지 않은 메시지" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "메시지를 렌더링 할 수 없습니다." -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "위젯: API 프로그래머가 유효하지 않은 JSON 콘텐츠를 보냈습니다" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "반응이 이미 존재합니다." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "이 이름을 가진 사용자 정의 이모티콘이 이미 존재합니다." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3186,8 +3239,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3206,18 +3259,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3226,38 +3293,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "설명이 없습니다." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3267,56 +3334,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "이 API는 수신 webhook 봇에서 사용할 수 없습니다." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "계정이 하위 도메인과 연결되어 있지 않습니다." -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "이 엔드 포인트는 봇 요청을 허용하지 않습니다." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "서버 운영자여야 합니다" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "불충분한 권한" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "이 엔드 포인트는 HTTP 기본 인증이 필요합니다." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "기본 승인에 대한 권한 헤더가 유효하지 않습니다." -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "기본 승인에 대한 권한 헤더가 없습니다" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook 봇은 Webhook에만 액세스 할 수 있습니다." @@ -3331,94 +3401,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "하위 도메인의 길이는 3 이상이어야합니다." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "하위 도메인은 '-'로 시작하거나 끝낼 수 없습니다." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "하위 도메인은 소문자, 숫자 및 '-'만 가질 수 있습니다." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "하위 도메인을 사용할 수 없습니다. 다른 것을 선택하십시오." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "귀하의 실제 이메일 주소를 사용하십시오." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "{email}을 사용하여 가입하려는 조직이 존재하지 않습니다." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "조직 관리자에게 {email} 초대장을 요청하십시오." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "귀하의 이메일 주소인 {email}은 이 조직의 계정에 등록 할 수있는 도메인에 속해 있지 않습니다." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "이 조직에는 +가 포함된 이메일 주소가 허용되지 않았습니다." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "새로운 비밀번호" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "흔적" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "최대 10개의 이메일을 입력하십시오." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3483,31 +3559,31 @@ msgstr "하위 도메인은 '-'로 시작하거나 끝낼 수 없습니다." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "도메인은 글자, 숫자, '.' 그리고 '-' 만 가질 수 있습니다." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3540,166 +3616,166 @@ msgstr "이미 계정이 있습니다." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "유효하지 않은 사용자 정의 이모티콘." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "유효하지 않은 사용자 정의 이모티콘 이름." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "이 사용자 지정 이모티콘은 비활성화되어 있습니다." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "유효하지 않은 이모티콘 코드." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "이모티콘 이름이 유효하지 않습니다." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "이모티콘 형식이 유효하지 않습니다." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "조직 관리자나 이모티콘 작성자여야 합니다" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "이벤트 큐를 할당 할 수 없습니다." -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "로그인하지 않음 : API 인증 또는 사용자 세션 필요" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "스트림 '{stream}'이 존재하지 않습니다." -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API 사용량이 속도 제한을 초과했습니다." -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "조작된 JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "조직 관리자여야 합니다." -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "계정이 비활성화되었습니다" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "이 조직은 비활성화되었습니다" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "유효하지 않은 API 키" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "유효하지 않은 하위 도메인" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "접근 불가" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3707,6 +3783,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "반응이 이미 존재합니다." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "반응이 존재하지 않습니다." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3748,7 +3832,7 @@ msgid "Settings" msgstr "설정" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3761,264 +3845,272 @@ msgid "" "and give it a go!" msgstr "대화를 시작하려면 여기를 클릭하세요. 주제(2-3 단어가 가장 좋음)를 선택하고, 시작하세요!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "통합 프레임 워크" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "지속적인 통합" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "고객 지원" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "전개" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "통신" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "재정" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "마케팅" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "기타" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "프로젝트 관리" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "생산성" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "버전관리" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "메시지는 비워 둘 수 없습니다." -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "메시지에 null 바이트가 없어야합니다." -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "유효하지 않은 선택적 보기 연산자 : {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4033,669 +4125,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "토큰이 존재하지 않습니다." -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "이 쿼리에 대해 승인되지 않은 사용자" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "'{var_name}'인수가 없습니다." -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "'{var_name}'의 값이 잘못됨 : {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "오직 조직 관리자들만이 이 스트림에 보낼 수 있습니다." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "구독자 정보는 이 스트림에서 사용되지 않습니다" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "비공개 스트림의 구독자를 검색할 수 없습니다" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name}이 너무 깁니다 (제한: {max_length} 글자)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "업로드가 귀하 조직의 업로드 할당량을 초과합니다." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "사용자 그룹이 유효하지 않습니다." -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "이름이 너무 깁니다!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "이름이 너무 짧습니다!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "이름에 유효하지 않은 문자가 있습니다!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "이름이 이미 사용되고 있습니다!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "잘못된 이름 또는 사용자명" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "유효하지 않은 구성 데이터!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "유효하지 않은 봇 유형" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "인터페이스 유형이 유효하지 않습니다." -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "그러한 봇이 없습니다" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "그런 사용자가 없습니다." -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "사용자가 비활성화되었습니다." -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} 은 비워 둘 수 없습니다." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name}이 너무 깁니다 (제한: {max_length} 글자)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}'은 비워 둘 수 없습니다." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}'는 '{field_name}'에 대한 유효한 선택이 아닙니다." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "누락된 HTTP 이벤트 헤더 '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "이모티콘 이름에 유효하지 않은 문자가 있습니다." -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "관리자들과 중재자들 과 멤버들 그리고 손님들" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "관리자들과 중재자들 그리고 멤버들" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "관리자들과 중재자들" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "관리자만 가능" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "아무도 없음" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "중재자" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "회원" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "손님" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "공개" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "개인적이고 공유된 기록" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "개인적이고 보호된 기록" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "모든 채널 멤버들은 게시물을 올릴 수 있습니다." -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "오직 조직 관리자들만 게시할 수 있습니다." -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "오직 조직 관리자들 그리고 중재자들만 게시할 수 있습니다." -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "오직 조직 멤버들만 게시할 수 있습니다." -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "유니코드 이모티콘" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "사용자 정의 이모티콘" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip 추가 이모티콘" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "옵션 리스트" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "사람 선택" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "짧은 텍스트" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "긴 텍스트" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "날짜 선택" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "연결" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "알 수 없는 IP주소" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "누락된 'queue_id' 인수" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "누락된 'last_event_id' 인수" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4763,66 +4944,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "이메일 주소를 하나 이상 지정해야합니다." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "그러한 초대장이 없습니다." -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "이 조직에서 메시지 편집 기록을 사용할 수 없습니다." -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "이 메시지를 삭제할 수 있는 권한이 없습니다" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "이 메시지를 편집하는데 시간 제한이 지났습니다." -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4830,22 +5044,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "누락된 발신자" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "미러된 메시지가 유효하지 않습니다." -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "이 조직에서 Zephyr 미러링은 사용하실 수 없습니다." @@ -4861,26 +5076,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "현재 상태는 봇 사용자에게는 지원되지 않습니다." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4897,37 +5113,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "반응이 존재하지 않습니다." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "하나 이상의 인증 방법이 사용 가능해야합니다." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "유효하지 않은 도메인: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4939,42 +5155,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "정확히 하나의 파일을 업로드해야합니다." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4982,7 +5199,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "단 하나의 아이콘만 업로드해야합니다." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4990,107 +5207,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "'{principal}' 대신 쿼리를 실행할 권한이 없는 사용자" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "\"new_description\"또는 \"new_group_name\"을 전달해야 합니다." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "\"op\"에 대한 값이 유효하지 않습니다. \"추가\"또는 \"제거\"중 하나를 지정하십시오." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "스트림은 이미 그 이름을 가지고 있습니다!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "할 것이 없다. \"추가\"또는 \"삭제\"중 적어도 하나를 지정하십시오." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "다른 Zephyr 미러링 사용자만이 비공개 스트림에 초대 할 수 있습니다." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

이 파일을 볼 수있는 권한이 없습니다.

" @@ -5106,97 +5316,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

파일을 찾을 수 없습니다.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "업로드 할 파일을 지정해야합니다." -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "한 번에 하나의 파일만 업로드 할 수 있습니다." -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "새로운 데이터가 제공되지 않았습니다." -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "아바타 변경은 이 조직에서 불가능합니다." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "이 조직에서는 전자 메일 주소 변경이 비활성화되어 있습니다." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "귀하의 Zulip 비밀번호는 LDAP에서 관리됩니다." -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "잘못된 비밀번호!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "정확히 하나의 아바타를 업로드해야합니다." @@ -5243,6 +5464,10 @@ msgstr "포함된 봇 이름이 유효하지 않습니다." msgid "Username already in use" msgstr "사용자명은 이미 사용중입니다." +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5253,7 +5478,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "여기서는 1회용 이메일 주소는 사용하실 수 없습니다." #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5272,27 +5498,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5312,28 +5538,28 @@ msgstr "유효하지 않은 Kerberos 캐시" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "알 수 없는 웹후크 요청" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "주제는 비워둘 수 없습니다." -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "내용은 비워 둘 수 없습니다." -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "잘못된 JSON 입력" @@ -5352,7 +5578,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5360,19 +5586,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "피벗 페이로드를 처리 할 수 없습니다." -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "오류: 0 또는 1 이외의 channels_map_to_topics 매개 변수" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Slack으로 부터의 메시지" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5389,47 +5616,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "유효한 Zulip 서버 API키로 유효화해야 한다." #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "유효하지 않은 토큰 타입" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP가 유효하지 않습니다." -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/ko/translations.json b/locale/ko/translations.json index f3531aea5a..cfb79c0cd2 100644 --- a/locale/ko/translations.json +++ b/locale/ko/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(숨겨진)", "(no description)": "(설명 없음)", "(no topic)": "(주제 없음)", + "(or )": "", "(you)": "(귀하)", "({message_retention_days} days)": "({message_retention_days} 메세지 보유 기간)", "/dark (Switch to the dark theme)": "/어두움 (어두운 테마로 변경)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name}는 이 채널을 구독하지 않았습니다. 그들은 너가 그들을 구독하기 전까지 알아차리지 못할 것입니다. ", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "클릭하세요. 개인 채널과 메세지를 내보내는 방법에 대해 알아보려면", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "업그레이드 하세요 더 많은 공간을 위해", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "경고문 추가", "Add all users": "사용자들 다 추가", "Add another user...": "다른 사용자를 추가하세요...", + "Add audio call": "", "Add code playground": "코드방 추가", + "Add default streams": "", + "Add email": "", "Add emoji": "이모티콘 추가", "Add emoji reaction": "이모티콘 반응 추가", "Add extra emoji for members of the {realm_name} organization.": " {realm_name} 조직의 멤버들을 위해 이모티콘을 추가 하세요", "Add global time": "세계 시간 추가", "Add linkifier": "링크 변환기 추가", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "멤버 추가..", - "Add new default stream": "새로운 기본 스트림 추가", "Add new user group": "", "Add one or more users": "한명 이상의 사용자를 추가하세요", "Add option": "옵션 추가", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "작업 추가", "Add video call": "비디오 통화 추가", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "성공적으로 추가되었습니다!", "Added successfully.": "", "Administrator": "관리자", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "전체", "All direct messages": "", + "All groups": "", "All messages": "전체 메시지", "All messages including muted streams": "음소거된 스트림들을 포함한 모든 메세지", "All streams": "모든 스트림", @@ -136,9 +142,11 @@ "Allow subdomains": "하위 도메인 허용", "Allowed domains": "허용된 도메인", "Allowed domains: {domains}": "허용된 도메인: {domains}", + "Already members:": "", "Already not subscribed.": "아직 구독되지 않음", "Already subscribed to {stream}": " {stream}에 아직 구독되지 않음", "Already subscribed users:": "이미 구독한 유저들:", + "Already subscribed.": "", "Always": "항상", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API 키를 통해 Zulip 계정에 접근 가능합니다. 귀하의 API 키로 접근한 사용자는 귀하를 대신해 메시지를 읽고 보낼 수 있으며, 또한 귀하를 사칭 가능하기 때문에 비밀번호만큼 신중히 관리해야합니다.
작업이 계정에 대한 접근을 요구하는 경우가 아니면 봇을 만들고 봇의 계정과 API 키를 사용하여 Zulip API에 액세스하는 것을 추천합니다.", "An hour ago": "한 시간 전에", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "아카이브 스트림", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "당신은 ''''{stream_name}'''' 이름을 가진 스트림 만들고 {count} 유저들을 그것에 구독하도록 하기를 원합니까?", "Are you sure you want to deactivate this organization?": "당신은 이 조직이 비활성되도록 하시겠습니까?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "당신은 에게 다시 초대를 보내겠습니까?", "Are you sure you want to revoke the invitation to {email}?": "당신은{email}에게 보낸 초대를 취소 하시겠습니까?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "당신은 {referred_by}에 의해 만들어진 초대 링크를 취소 하시겠습니까?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "당신은 안에 있는 모든 메세지를 스타표시를 지우시겠습니까? 이 동작은 되돌릴 수 없습니다.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "너는 모든 스타된 메세지를 스타 표시를 지우시겠습니까? 이 동작은 되돌릴 수 없습니다.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Gravatar에서 아바타 가져오기", "Back to streams": "스트림으로 돌아가기", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "청구서", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "봇 타입", "Bots": "봇", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "스트림 찾기", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "계정을 비활성화하면 즉시 로그아웃됩니다.", @@ -218,6 +232,8 @@ "Click here to reveal.": "더 많은 정보를 위해서 이곳을 클릭", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "저장을 위한 입력란 밖을 클릭하십시오. 우리는 자동으로 추가되거나 삭제된 사람에게 알려줄 것입니다. ", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "닫기", "Close modal": "현재 창을 종료", @@ -232,7 +248,7 @@ "Commuting": "통근중", "Compact": "", "Complete": "완료", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "이 조직의 목적을 설명하고 상표화시키기 위해 조직 프로필을 완료시키십시오", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "메세지 작성", "Compose your message here": "여기에 귀하의 메시지를 작성하십시오", "Compose your message here...": "여기에 귀하의 메시지를 작성하십시오...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "보내기전에 이모티콘을 변경(:)는 😃로 변경됨 )", "Cookie Bot": "쿠키 봇", "Copied!": "복사되었습니다!", + "Copy URL": "", "Copy address": "", "Copy and close": "복사 및 닫기", "Copy code": "코드 복사", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "손님", + "Custom URL": "", "Custom emoji": "사용자 정의 이모티콘", "Custom language: {query}": "사용자 언어: {query}", "Custom linkifier added!": "사용자 링크 추가!", @@ -302,10 +320,12 @@ "Deactivated": "비활성화된", "Deactivated users": "비활성화된 사용자들", "December": "12월", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "기본 언어는 {language}입니다. 'text'를 사용해 밑줄 표시를 비활성화 하십시오.", "Default language for code blocks": "", "Default streams": "기본 스트림", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "기본 사용자 설정", "Default view": "기본 보기", @@ -314,12 +334,14 @@ "Delete": "삭제", "Delete alert word": "경고문 삭제", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "임시 보관한 내용 삭제", "Delete file": "파일 삭제", "Delete file?": "", + "Delete group": "", "Delete icon": "아이콘 삭제", "Delete linkifier?": "", "Delete logo": "로고 삭제", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "너의 조직의 크기에 비례하여, 수 초부터 한 시간까지 걸리는 내보내기가 가능합니다.", "Deprecation notice": "변경 공지", "Description": "설명", + "Deselect draft": "", "Desktop": "데스크탑", "Desktop & mobile apps": "데스크탑 & 모바일 앱", "Desktop message notifications": "데스크탑 메세지 알림", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "규격화된 문서화에 대한 자세한 메세지", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "사용 불가능", "Discard": "버리기", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "화면 설정", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "도메인", "Don’t allow disposable email addresses": "1회용 이메일 주소를 허용하지 않습니다", "Download": "다운로드", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "링크 편집", "Edit message": "메시지 편집", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "선택된 임시 보관한 내용 편집", "Edit selected message or view source": "", "Edit status": "상태 편집", @@ -398,7 +423,6 @@ "Edit your last message": "최근 메시지 편집", "Edit your profile": "프로필 편집", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "편집된({last_edit_timestr})", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "외부 계정 타입", "External link": "외부 링크", "Failed": "실패함", + "Failed adding one or more streams.": "", "Failed to create video call.": "비디오 콜을 생성하는데 실패", "Failed to generate preview": "미리보기를 생성하지 못했습니다.", "Failed to upload %'{file}'": "%'{file}'을 업로드 하는데 실패", @@ -485,11 +510,9 @@ "Filter exports": "내보내기 필터링", "Filter groups": "", "Filter invites": "초대 필터링", - "Filter languages": "언어 필터링", "Filter linkifiers": "링크 필터링", "Filter members": "", "Filter muted users": "음소거된 사용자들 필터링", - "Filter roles": "", "Filter streams": "스트림 필터링", "Filter subscribers": "", "Filter topics": "주제를 필터링", @@ -500,6 +523,9 @@ "First message": "첫 메시지", "First time? Read our guidelines for creating and naming streams.": "처음이신가요? 스트림의 이름을 짓거나 만들기 위해서는 우리의가이드를 읽어주세요.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY 특징", "GIPHY integration": "GIPHY 통합", "General": "일반", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "초대 링크 생성", "Generate new API key": "새로운 API 키 생성", @@ -542,14 +569,18 @@ "High contrast mode": "고대비 모드", "Hint": "힌트", "Hint (up to 80 characters)": "힌트 ( 80문자 까지로 제한)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "사람", "Idle": "대기", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "비활성화 된 사용자를 무시하는", "Image": "이미지", "In a meeting": "회의 안 에서", "Inactive": "", "Inactive bots": "비활성화된 봇", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "메세지 알림 이메일에 메세지 내용을 포함시키기", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "들어오는 웹후크는 메시지를 보낼 수 만 있습니다.", "Initiate a search": "검색 시작", "Insert new line": "새 라인 삽입", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "통합", "Interface": "인터페이스", "Invalid URL": "유효하지 않은 URL", @@ -581,6 +614,8 @@ "Inviting...": "초대 중...", "Italic": "", "January": "1월", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "가입됨", @@ -599,8 +634,10 @@ "Last 30 days": "지난 30일 동안", "Last 6 months": "지난 6 개월 동안", "Last active": "마지막 활성화", + "Last edited {last_edit_timestr}": "", "Last message": "최근 메시지", "Last modified": "마지막으로 수정됨", + "Last moved {last_edit_timestr}": "", "Learn more": "좀 더 알아보기", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "로그아웃", "Looking for our integrations or API documentation?": "우리의통합혹은API문서들을 찾고 계십니까?", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "스트림 관리", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "언급 됨", "Mentions": "언급된 메시지", - "Menu": "메뉴", "Menus": "메뉴", "Message #{stream_name}": "{stream_name}으로 메세지로 보냄", "Message #{stream_name} > {topic_name}": "{stream_name} > {topic_name}로 메세지를 보냄", @@ -662,6 +699,8 @@ "Message {recipient_names}": "{recipient_names}의 메세지", "Message {recipient_name} ({recipient_status})": "{recipient_name} 의메세지 ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "모바일", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "주제를 옮김", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "구독자에 의해 초대 되어야합니다; 새로운 구독자들은 그들이 참여한 뒤에 관리자가 아닌 유저들에 의해 숨겨진 메세지들을 볼 수 있습니다;", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "구독자에 의해 초대 되어야합니다; 새로운 구독자들은 관리자가 아닌 유저들에 의해 숨겨진 메세지 기록들을 볼 수 있습니다.", + "Mute": "", "Mute stream": "스트림 뮤트하기", "Mute this user": "이 유저를 음소거함", "Mute topic": "주제 뮤트하기", @@ -734,38 +773,42 @@ "New password is too weak": "새로운 비밀번호가 보안에 너무 취약합니다", "New stream announcements": "", "New stream message": "새로운 스트림 메시지", + "New stream notifications": "", "New task": "새로운 작업", "New topic": "새로운 주제", "New user announcements": "", + "New user notifications": "", "Next message": "다음 메시지", "Next unread direct message": "", "Next unread topic": "읽지 않은 다음 주제", - "Next week": "다음주", "No bots match your current filter.": "현재 필터와 일치하는 봇이 없습니다.", + "No conversations match your filters.": "", "No custom emoji.": "커스텀 이모지 없음", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "현재 필터와 일치하는 기본 스트림 없습니다.", "No description.": "설명이 없습니다.", + "No drafts selected": "", "No drafts.": "임시 보관한 내용이 없습니다.", "No exports.": "내보내기 없음", "No invites match your current filter.": "현재 필터와 일치하는 초대장이 없습니다.", "No language set": "언어 모음 없음", "No linkifiers set.": "링크 모음 없음", + "No matching results": "", "No matching users.": "매칭된 유저들 없음", "No one has read this message yet.": "", "No owner": "주인 없음", "No playgrounds configured.": "어떠한 코드 변경 방도 구성되지 않았습니다.", "No restrictions": "제한 없음", "No scheduled messages.": "", - "No search results": "검색결과없음", "No search results.": "", "No stream subscriptions.": "스트림 설명 없음", "No streams": "스트림 없음", "No topics are marked as resolved.": "", - "No topics match your current filter.": "당신의 현재 필터와 일치하는 주제는 없습니다.", "No user group subscriptions.": "사용자 그룹 설명이 없음", "No user groups": "", "No user to subscribe.": "구독한 사용자 없음", "No users match your current filter.": "현재 필터와 일치하는 사용자가 없습니다.", + "No users to add.": "", "No, I'll catch up.": "아니오, 스스로 하겠습니다.", "Nobody": "아무도 없음", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "11월", + "Numbered list": "", "October": "10월", "Old password": "기존 비밀번호", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "오직 스트림 멤버들만 개인 스트림에 사용자들을 추가할 수 있습니다.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "열기", "Open message menu": "메시지 메뉴 열기", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "주제 목록을 보려면 >를 누르십시오", "Prevent users from changing their avatar": "사용자들이 그들의 아바타를 변경하지 못하도록 막기", "Prevent users from changing their email address": "사용자가 이메일 주소를 변경하지 못하도록 방지", @@ -869,6 +915,7 @@ "Previous message": "이전 메시지", "Privacy": "개인 정보", "Privacy settings": "개인 정보 설정", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "개인적이고 보호된 기록", "Private, shared history": "개인적이고 공유된 기록", "Profile": "프로필", @@ -883,6 +930,7 @@ "Reactivate bot": "봇 재활성화", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "임시 보관됨", "Saved. Please reload for the change to take effect.": "저장됨. 변경사항을 위하여 새로고침해 주십시오", "Saving": "저장 중", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "이메일 구성 방법을 참조하십시오.", "Select a stream": "", "Select a stream below or change topic name.": "스트림 아래를 선택하거나 주제 이름을 바꾸십시오", - "Select date and time": "날짜와 시간을 선택하세요", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "이모티콘 선택", "Select language": "", + "Select stream": "", "Send": "보내기", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "부재 중일 때 요약 이메일 보내기", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "업로드 및 링크 된 이미지의 미리보기 표시", "Show starred message count": "스타된 메세지 수를 보여주기", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "API 키 표시/변경", "Sign up": "가입하기", "Silent mentions do not trigger notifications.": "조용한 언급들은 알람을 유발하지 않습니다.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "예상 주간 트래픽 기준으로 분류", "Sort by name": "이름 기준으로분류", "Sort by number of subscribers": "구독자들 수로 분류", + "Sort by unread message count": "", "Spoiler": "스포일러", "Star": "별표", "Star selected message": "선택한 메시지를 별표하기", @@ -1024,8 +1080,10 @@ "Subscribe": "구독", "Subscribe them": "그들을 구독", "Subscribe to/unsubscribe from selected stream": "선택한 스트림을 구독/구독 해제", + "Subscribe {full_name} to streams": "", "Subscribed": "구독됨", "Subscribed streams": "구독한 스트림", + "Subscribed successfully!": "성공적으로 구독되었습니다!", "Subscriber count": "구독 수", "Subscribers": "구독자", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "현재 알림 단어들은 없습니다.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Zulip 서버가 오래된 버전으로 사용 중 입니다. 업그레이드를 진행 하십시오", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "이것은 Zulip 알림 같이 보입니다.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "이 메세지는 당신이 보낸 사람을 차단했기 때문에 보이지 않습니다.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "시간대", "Time's up!": "시간이 다 되었습니다!", "Tip: You can also send \"/poll Some question\"": "팁: 너는 또한 \"/투표 몇가지 질문\"을 보낼 수 있다.", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "여러 라인의 코드 블럭 문장들을 추가하기 위해서는 언어의첫번째 Pygments short name을 추가하십시오. 그 후 너는 또한 4개의 공백이 있는 한 줄로 만듬으로써 코드 블럭을 생성 가능합니다.", "To invite users, please increase the number of licenses or deactivate inactive users.": "사용자들을 추가하기 위해서는 license의 개수를 늘리거나활동이 없는 유저들을 비활성화시키십시오", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "오늘", @@ -1112,7 +1170,6 @@ "Toggle subscription": "구독 토글하기", "Toggle the gear menu": "메뉴 토글하기", "Toggle topic mute": "주제 뮤트 토글하기", - "Tomorrow": "내일", "Tomorrow at {time}": "", "Topic": "주제", "Topic muted": "주제 뮤트되었음", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "두 가지 매체 사용 인증", "Type": "타입", + "URL": "", + "URL for your integration": "", "URL pattern": "URL 패턴", - "URL prefix": "URL prefix", "URL template": "", "USERS": "사용자", "Uncheck all": "모두 선택 취소", @@ -1139,6 +1197,7 @@ "Unmute this user": "이 유저를 음소거 해제함", "Unmute topic": "주제 언뮤트하기", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "탑에서 스트림에 핀을 해제함", "Unread": "읽지 않음", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "임시 보관함 보기", - "View edit history": "편집 기록보기", + "View edit and move history": "", "View file": "파일보기", "View in playground": "코드 변경 방에서 보기", "View in {name}": "{name}으로 보기", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "수요일", "Week of {date}": "{date}의 주", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "다시 돌아온 것을 환영합니다! 너는 {unread_msgs_count}수 만큼의 읽지 않은 메세지가 존재합니다. 너는 그것들을 모두 읽음 표시로 하겠습니까?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "@all 와 같은 중요언급들은 알림 목적에 맞게 사용되어야 합니다.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "누가 스트림에 접근할 수 있습니까?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "누가 사용자 그룹들을 만들고 관리할 수 있습니까?", "Who can create private streams": "누가 비공개 스트림들을 만들 수 있습니까?", "Who can create public streams": "누가 공개 스트림들을 만들 수 있습니까?", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "누가 그들 자신의 메세지를 삭제할 수 있습니까?", - "Who can invite users to this organization": "누가 이 조직에 사용자들을 조직에 초대할 수 있습니까?", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "누가 스트림에 게시할 수 있습니까?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "누가 이 큰 스트림에서 @all/@everyone을 사용할 수 있습니까?", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "귀하와", "You and {display_reply_to}": "당신과 {display_reply_to}", "You and {recipients}": "당신과 {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "귀하는 현재 이 스트림을 구독하지 않았습니다.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "당신은 알려진 보완 버그들과 함계 오래된 Zulip 데스크톱을 사용 중 입니다.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "귀하는 이 스트림을 구독하지 않았고, 어떠한 사람도 아직 그것에 대하여 이야기 하지 않았습니다.", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "당신은 또한 테이블들마크다운된 테이블 구문과 만들 수 있다.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "당신은 이 스트림에서 중요한 언급을 사용하도록 허가받지 못 하였습니다.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "출력 결과", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "당신은 를 음소거 했습니다.", + "You have muted this topic": "", "You have no active bots.": "활성화된 봇이 없습니다.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "당신은 어느 누구도 아직 음소거 하진 않았습니다.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "파일을 업로드하지 않았습니다.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "귀하가 언급된 메시지는 없습니다.", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "조직 관리자만이 가입하지 않고 스트림을 만들수 있습니다. ", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "메시지를 보내려면 Zephyr 미러링을 실행해야합니다!", "You searched for:": "당신은 찾았습니다:", "You subscribed to stream ": "", "You type": "입력 문자", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "귀하는 이 스트림에 구독하지 않았습니다. 다른 사용자가 귀하의 메시지에 답장할 경우, 당신에게 통지되지 않을 것입니다.", "Your API key:": "귀하의 API 키:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip은 유저의 이메일 주소를 확인하고, 알림을 보내기 위해 이메일을 보내야합니다.", "Zulip needs your permission to enable desktop notifications.": "Zulip은 데스크톱 알림을 활성화하기 위해 당신의 허락이 필요합니다.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip 번역은 놀라운 번역 지원자들에 의해 이루어집니다. 만약 그들이 돕기 원한다면, Zulip 번역 가이드를 살펴보십시오", "[Configure]": "[구성]", - "[Disable]": "[불가능]", - "[More…]": "[좀 더…]", "[Quoting…]": "", - "[Unset]": "[설정 해제]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "그리고 {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "베타", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1 시간 내에", - "in 20 minutes": "20 분 내에", - "in 3 hours": "3 시간 내에", "invisible mode off": "", "leafy green vegetable": "잎이 무성한 녹색 채소", "marketing": "마케팅", "more conversations": "더 많은 대화", "more topics": "더 많은 주제", - "or": "혹은", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} 전에", "{full_name} is typing…": "{full_name} 입력 중…", "{hours} hours ago": "{hours} 시간 전에", - "{items_selected} selected": "{items_selected} 선택됨", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} 분 동안 편집 ", "{minutes} minutes ago": "{minutes} 분 전에", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", "{seconds} sec to edit": "{seconds} 초 동안 편집", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [말함]({link_to_message}):", "{username} reacted with {emoji_name}": " {emoji_name}에 반응한 {username}" diff --git a/locale/lt/LC_MESSAGES/django.po b/locale/lt/LC_MESSAGES/django.po index ca8cf653c3..57fe6cf92c 100644 --- a/locale/lt/LC_MESSAGES/django.po +++ b/locale/lt/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: R S , 2020\n" "Language-Team: Lithuanian (http://app.transifex.com/zulip/zulip/language/lt/)\n" @@ -18,46 +18,47 @@ msgstr "" "Language: lt\n" "Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Analitiniai duomenys negalimi. Susisiekite su serverio administratoriumi." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -118,29 +119,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -172,7 +175,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -188,14 +191,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -207,7 +210,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -257,7 +260,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Vidinė serverio klaida" @@ -559,9 +562,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -579,9 +582,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -591,9 +594,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -856,51 +859,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Ačiū, kad užsiregistravote!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Vis dar negavote el. laiško? Galime jį atsiųsti iš naujo." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Dėl viso pikto, patikrinkite šlamšto katalogą." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Bandykite dabar." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -1148,6 +1151,159 @@ msgstr "Naudotojai" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1155,6 +1311,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1168,22 +1357,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1238,17 +1414,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1353,225 +1518,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1656,14 +1602,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1695,21 +1641,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1717,21 +1687,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1774,29 +1744,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1959,6 +1929,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1987,6 +1965,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2375,7 +2425,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2875,290 +2925,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Kai kurie el. pašto adresai nepatvirtinti, todėl pakvietimų neišsiuntėme." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Negalėjome nieko pakviesti." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Kai kuriuos el. pašto adresus turintys žmonės jau naudoja programėlę, todėl pakvietimo jiems neišsiuntėme. Tačiau visi kiti pakvietimą gavo!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nėra ko pakeisti" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Neturite teisės redaguoti šios žinutės" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Negaliojanti žinutė" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Nepavyko perteikti žinutės" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3174,8 +3227,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3194,18 +3247,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3214,38 +3281,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3255,56 +3322,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Paskyra nesusieta su šiuo subdomenu" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Nepakanka leidimo" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Šis galutinis taškas reikalauja paprastos HTTP autentifikacijos." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Negaliojanti autorizacija" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "„Webhook“ botai gali pasiekti tik „webhook“" @@ -3319,94 +3389,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomeno ilgis turi būti nuo 3 simbolių" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomenas negali prasidėti arba baigtis „-“." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomenas gali turėti tik mažąsias raides, skaičius ir „-“." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomenas negalimas. Pasirinkite kitą." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Naudokite tikrą el. pašto adresą." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3471,31 +3547,31 @@ msgstr "Subdomenai negali prasidėti ar baigtis „-“." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domenas gali turėti tik raides, skaičius, „.“ ir „-“." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3528,166 +3604,166 @@ msgstr "Jau turi paskyrą." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Nepavyko paskirti įvykio eilės" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Neprisijungęs: API autentifikavimas arba naudotojo sesija nebegalioja" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Blogas JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Negaliojantis API raktas" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Negaliojantis subdomenas" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Prieiga nesuteikta" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3695,6 +3771,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3736,7 +3820,7 @@ msgid "Settings" msgstr "Nustatymai" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3749,264 +3833,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Žinutė negali būti tuščia" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4021,669 +4113,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Tokenas neegzistuoja" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Naudotojas neturi teisių šiai užklausai" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Per ilgas vardas" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Pavadinime yra negaliojantis simbolis!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Blogas vardas arba slapyvardis" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Tokio boto nėra" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Tokio naudotojo nėra" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Negaliojantys simboliai šypsenėlės pavadinime" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Tinkintos šypsenėlės" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Trūksta „eilės_id“" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Trūksta „paskutinio_įvykio_id“" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4751,66 +4932,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Turite nurodyti bent vieną el. pašto adresą." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4818,22 +5032,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Nėra siuntėjo" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Negaliojanti veidrodinė žinutė" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4849,26 +5064,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4885,37 +5101,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Turi būti įgalintas bent vienas autentifikacijos būdas." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Negaliojantis domenas: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4927,42 +5143,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4970,7 +5187,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Turite įkelti vieną ikonėlę." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4978,107 +5195,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Srautas jau turi šį pavadinimą!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Veiksmo nėra. Nurodykite „pridėti“ ar „ištrinti“." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5094,97 +5304,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Turite nurodyti norimą įkelti failą" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Galite vienu metu kelti tik vieną failą" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nauji duomenys nepateikti" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "El. pašto adreso pakeitimai šiai organizacijai išjungti." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Blogas slaptažodis" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Turite įkelti vieną avatarą." @@ -5231,6 +5452,10 @@ msgstr "" msgid "Username already in use" msgstr "Šis slapyvardis užimtas" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5241,7 +5466,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5260,27 +5486,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5300,28 +5526,28 @@ msgstr "Negaliojanti „Kerberos“ talpykla" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Nežinomas „webhook“ prašymas" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Temos vieta negali būti tuščia" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Turinys negali būti tuščias" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Bloga JSON įvestis" @@ -5340,7 +5566,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5348,19 +5574,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Nepavyko sutvarkyti esminio įkrovimo" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Klaida: channels_map_to_topics parametras nėra 0 arba 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Žinutė iš „Slack“" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5377,47 +5604,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/lt/translations.json b/locale/lt/translations.json index 4ebfd7f509..0346652cd9 100644 --- a/locale/lt/translations.json +++ b/locale/lt/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "Visi srautai", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "Botai", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Uždaryti", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "Savo žinutę rašykite čia...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "Tinkintos šypsenėlės", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "Išaktyvuoti naudotojai", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Įprasti srautai", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Delete", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "Darbalaukis ir mobiliosios programėlės", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Rodyti nustatymus ", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Redaguoti savo paskutinę žinutę", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Pradėti paiešką", "Insert new line": "Įterpti naują eilutę", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integracijos", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "Kviečiama...", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "Paskutinė žinutė", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Atsijungti", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Valdyti srautus", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Paminėjimai", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "Nauja žinutė", + "New stream notifications": "", "New task": "", "New topic": "Nauja tema", "New user announcements": "", + "New user notifications": "", "Next message": "Kita žinutė", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Ne, aš pasivysiu.", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "Atidaryti žinučių meniu", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "Ankstesnė žinutė", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Siųsti", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Prisiregistruoti", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "Pažymėti pasirinktas žinutes", @@ -1024,8 +1080,10 @@ "Subscribe": "Užsiprenumeruoti", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Perjungti reikmenų meniu", "Toggle topic mute": "Perjungti temos nutildymą.", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "Tema", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "NAUDOTOJAI", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Žiūrėti juodraščius", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Tu ir", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Nesate užsiprenumeravęs šio srauto ir niekas apie tai dar nekalbėjo.", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Gaunate", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Dar nebuvote paminėtas!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "Spausdinate", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} few {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} few {} many {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/lv/LC_MESSAGES/django.po b/locale/lv/LC_MESSAGES/django.po index 31bfcadd16..f840650d09 100644 --- a/locale/lv/LC_MESSAGES/django.po +++ b/locale/lv/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -19,46 +19,46 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -115,32 +115,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -260,7 +260,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -570,9 +570,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -590,9 +590,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -602,9 +602,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -913,7 +913,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -942,7 +942,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1173,8 +1172,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1182,7 +1333,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1192,647 +1375,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1860,15 +1436,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1883,6 +1454,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1896,6 +1472,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1914,6 +1502,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1921,6 +1519,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1932,204 +1542,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2139,6 +1554,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2156,6 +1576,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2163,6 +1588,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2187,14 +1626,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2213,6 +1652,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2230,6 +1681,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2237,6 +1695,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2331,6 +1797,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2344,6 +1828,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2352,6 +1881,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2414,6 +1957,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2442,6 +1993,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2450,6 +2089,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2466,6 +2128,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2741,7 +2461,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3250,16 +2970,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3268,7 +2988,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3325,27 +3045,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3385,72 +3105,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3469,74 +3183,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3569,32 +3291,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3604,38 +3326,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3655,7 +3377,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3676,12 +3398,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3712,90 +3435,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3866,31 +3593,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3970,131 +3697,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4139,7 +3865,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4152,92 +3878,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4431,67 +4157,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4515,8 +4228,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4529,101 +4242,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4646,498 +4446,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5230,57 +4984,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5298,19 +5080,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5326,25 +5108,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5367,26 +5149,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5415,33 +5197,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5449,7 +5231,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5469,88 +5251,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5596,87 +5369,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5757,27 +5530,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5801,24 +5574,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5837,7 +5610,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5845,20 +5618,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5893,20 +5666,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5918,10 +5691,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/lv/translations.json b/locale/lv/translations.json index c376c91f20..43acbef02c 100644 --- a/locale/lv/translations.json +++ b/locale/lv/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/ml/LC_MESSAGES/django.po b/locale/ml/LC_MESSAGES/django.po index bae54edb73..d6926bb59d 100644 --- a/locale/ml/LC_MESSAGES/django.po +++ b/locale/ml/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: 2021-05-27 07:08+0000\n" "Last-Translator: Akash Nimare \n" "Language-Team: Malayalam (http://www.transifex.com/zulip/zulip/language/" @@ -20,51 +20,51 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 #, fuzzy #| msgid "Private messages" msgid "Direct messages" msgstr "സ്വകാര്യ സന്ദേശങ്ങൾ" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 #, fuzzy #| msgid "Private messages" msgid "Group direct messages" msgstr "സ്വകാര്യ സന്ദേശങ്ങൾ" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" "അനലിറ്റിക്സ് ഡാറ്റയൊന്നും ലഭ്യമല്ല. ദയവായി നിങ്ങളുടെ സെർവർ അഡ്മിനിസ്ട്രേറ്ററെ ബന്ധപ്പെടുക." -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -121,32 +121,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -268,7 +268,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -586,9 +586,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -606,9 +606,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 #, fuzzy #| msgid "About Zulip" @@ -620,9 +620,9 @@ msgstr "സുലിപ്പിനെക്കുറിച്ച്" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -945,7 +945,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -974,7 +974,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1215,8 +1214,162 @@ msgstr "സാധാരണ ഉപയോക്താക്കൾ" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +#, fuzzy +#| msgid "Organization URL" +msgid "Go to organization" +msgstr "ഓർ‌ഗനൈസേഷൻ‌ URL" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1224,7 +1377,43 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +#, fuzzy +#| msgid "Confirm password" +msgid "Confirm and set password" +msgstr "രഹസ്യവാക്ക് ഉറപ്പിക" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +#, fuzzy +#| msgid "Deactivated organization" +msgid "Verify your new email address for your demo Zulip organization" +msgstr "നിഷ്ക്രീയമാക്കിയ സംഘടന" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1234,651 +1423,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -#, fuzzy -#| msgid "Thanks for signing up!" -msgid "Thanks for your request!" -msgstr "സൈനപ്പ് ചെയ്തതിനു നന്ദി" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -#, fuzzy -#| msgid "Find accounts" -msgid "Your account details:" -msgstr "അക്കൗണ്ടുകൾ കണ്ടെത്തുക" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 #, fuzzy #| msgid "Deactivated organization" @@ -1908,15 +1486,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1931,6 +1504,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1944,6 +1522,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1962,6 +1552,18 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +#, fuzzy +#| msgid "Thanks for signing up!" +msgid "Thanks for your request!" +msgstr "സൈനപ്പ് ചെയ്തതിനു നന്ദി" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1969,6 +1571,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 #, fuzzy #| msgid "Find accounts" @@ -1982,206 +1596,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -#, fuzzy -#| msgid "Organization URL" -msgid "Go to organization" -msgstr "ഓർ‌ഗനൈസേഷൻ‌ URL" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2191,6 +1608,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2208,6 +1630,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2215,6 +1642,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2239,14 +1680,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2265,6 +1706,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2282,6 +1735,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2289,6 +1749,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2383,6 +1851,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2396,6 +1882,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2404,6 +1935,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2466,6 +2011,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2494,6 +2047,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2502,6 +2143,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2518,6 +2182,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2811,7 +2533,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3332,16 +3054,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3350,7 +3072,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3407,27 +3129,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3471,72 +3193,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3555,78 +3271,86 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 #, fuzzy #| msgid "Deactivated organization" msgid "Direct messages are disabled in this organization." msgstr "നിഷ്ക്രീയമാക്കിയ സംഘടന" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 #, fuzzy #| msgid "Deactivated organization" msgid "Topics are required in this organization" msgstr "നിഷ്ക്രീയമാക്കിയ സംഘടന" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3659,32 +3383,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3694,38 +3418,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3745,7 +3469,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3766,12 +3490,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3802,90 +3527,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "പുതിയ രഹസ്യവാക്ക്" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3956,31 +3685,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -4060,131 +3789,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4231,7 +3959,7 @@ msgid "Settings" msgstr "സജ്ജീകരണങ്ങൾ" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4244,92 +3972,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4523,67 +4251,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4607,8 +4322,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4621,101 +4336,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4738,502 +4540,456 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 #, fuzzy #| msgid "Administrators" msgid "Admins and moderators" msgstr "നടത്തിപ്പുകാർ" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 #, fuzzy #| msgid "Private messages" msgid "Private, shared history" msgstr "സ്വകാര്യ സന്ദേശങ്ങൾ" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "നിങ്ങൾക്ക് വേണ്ട ഇമോജി" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5330,57 +5086,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5398,19 +5182,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5426,25 +5210,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5469,26 +5253,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "നിഷ്ക്രീയമാക്കിയ സംഘടന" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 #, fuzzy #| msgid "Deactivated organization" msgid "Must be a demo organization." @@ -5519,33 +5303,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5553,7 +5337,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5573,88 +5357,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5700,87 +5475,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5861,27 +5636,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5905,24 +5680,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5941,7 +5716,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5949,20 +5724,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5997,20 +5772,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -6022,14 +5797,19 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" +#, fuzzy +#~| msgid "Find accounts" +#~ msgid "Your account details:" +#~ msgstr "അക്കൗണ്ടുകൾ കണ്ടെത്തുക" + #~ msgid "Thanks for signing up!" #~ msgstr "സൈനപ്പ് ചെയ്തതിനു നന്ദി" diff --git a/locale/ml/translations.json b/locale/ml/translations.json index 0d9679139c..6cb1af6c33 100644 --- a/locale/ml/translations.json +++ b/locale/ml/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(വിഷയം ഇല്ല)", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "ഇമോജി ചേർക്കുക", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "എല്ലാ മെസ്സേജുകളും ", "All messages including muted streams": "", "All streams": "എല്ലാ ശാഖകൾ", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "ബോട്ടുകൾ", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "അടയ്‌ക്കുക", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "നിങ്ങളൂടെ സന്ദേശം ഇവിടെ എഴുതൂ", "Compose your message here...": "", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "നിങ്ങൾക്ക് വേണ്ട ഇമോജി", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "ഒഴിവാക്കുക", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "ജനറൽ", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "പുതിയ API കീ ഉണ്ടാക്കുക", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "ചിത്രം", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "തിരയാൻ തുടങ്ങൂ", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "അവസാനത്തെ സന്ദേശം", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "പുതിയ ശാഖാ സന്ദേശം", + "New stream notifications": "", "New task": "", "New topic": "", "New user announcements": "", + "New user notifications": "", "Next message": "അടത്ത സന്ദേശം", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "പഴയ രഹസ്യവാക്ക്", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "ഇതിനു മുന്നിലേ സന്ദേശം", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "അയയ്ക്കുക", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "നിങ്ങളുടെ API കീ കാണിക്കുക അഥവാ മാറ്റുക", "Sign up": "സൈനപ്പ്", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1024,8 +1080,10 @@ "Subscribe": "വരിക്കാരനാകുക", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "വരിക്കാരനായി", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "വിഷയം", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "എല്ലാം ഒഴിവാക്കുക", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "നിങ്ങളും", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "നിങ്ങൾക്ക് കിട്ടും", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Zephyr mirroring റൺ ചെയ്തുകൊണ്ടേ നിങ്ങൾക്ക് സന്ദേശം അയക്കാൻ കഴിയുകയുള്ളൂ!", "You searched for:": "", "You subscribed to stream ": "", "You type": "നിങ്ങൾ ടൈപ്പ് ചെയ്യൂ", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "നിങ്ങളുടെ API കീ:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "കൂടുതൽ സംഭാഷണങ്ങൾ", "more topics": "കൂടുതൽ വിഷയങ്ങൾ", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/mn/LC_MESSAGES/django.po b/locale/mn/LC_MESSAGES/django.po index 905f2b7ca9..d14b3de336 100644 --- a/locale/mn/LC_MESSAGES/django.po +++ b/locale/mn/LC_MESSAGES/django.po @@ -18,7 +18,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Tim Abbott , 2023\n" "Language-Team: Mongolian (http://app.transifex.com/zulip/zulip/language/mn/)\n" @@ -28,46 +28,47 @@ msgstr "" "Language: mn\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Зочин хэрэглэгчдэд зөвшөөрөгдөөгүй" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Буруу бүлэг" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Нээлттэй групп чат" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Хаалттай групп чат" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Хувийн чат" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Групп хувийн чат" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Чартын: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Эхлэх цаг дуусах хугацаанаас хожуу байна. Эхлэх: {start}, Дуусах: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Аналитик мэдээлэл байхгүй. Серверийн админтайгаа холбогдоно уу." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Буруу параметрууд" @@ -128,29 +129,31 @@ msgid "" msgstr "Танд {num_invites} тооны хэрэглэгч нэмэхэд хангалттай Zulip лиценз алга." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Та хамгийн багадаа {} хэрэглэгчийн нэхэмжлэх ёстой." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "{}-с дээш лицензтэй нэхэмжлэхийг энэ хуудаснаас боловсруулах боломжгүй. Шинэчлэлтийг дуусгахын тулд {}-тэй холбогдоно уу." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Алдаа гарлаа. {email} холбогдоно уу." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Алдаа гарлаа. Хуудсаа дахин уншуулна уу." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Алдаа гарлаа. Хэсэг хугацаанд хүлээж байгаад дахин оролдоно уу." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -182,7 +185,7 @@ msgstr "Үйлчилгээний ангилал шинэчлэх боломжг msgid "Unable to update the plan. The plan has ended." msgstr "Үйлчилгээний ангилал шинэчлэх боломжгүй. Хугацаа нь дууссан байна." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -198,14 +201,14 @@ msgstr "Таны үйлчилгээ {licenses} лицензээр сунгагд msgid "You cannot decrease the licenses in the current billing period." msgstr "Та одоогийн төлбөрийн хугацаандаа лицензийг бууруулах боломжгүй." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Таны үйлчилгээ {licenses_at_next_renewal}  лицензээр автомат сунгалт хийгдэхээр байна." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Өөрчлөх зүйл алга." @@ -217,7 +220,7 @@ msgstr "Энэ байгууллагад үйлчлүүлэгч байхгүй!" msgid "Session not found" msgstr "Холболт салсан" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Төлбөрийн администратор эсвэл байгууллагын эзэмшигч байх ёстой." @@ -267,7 +270,7 @@ msgid "" msgstr "\nХэрэв энэ алдаа гэнэт гарвал, та \nбидэнтэй холбогдоорой\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Сервер дээрх алдаа" @@ -569,9 +572,9 @@ msgstr "Төлбөрийн мэдээлэл " #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -589,9 +592,9 @@ msgstr "Үнэ харах" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Бидний Оффис чат" @@ -601,9 +604,9 @@ msgstr "Бидний Оффис чат" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Ивээн тэтгэгч болох хүсэлт илгээх" @@ -866,51 +869,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "%(identity_provider)s-аар нэвтрэх" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Имэйл хаягаа баталгаажуулна уу." -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Бүртгүүлсэнд баярлалаа!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr " (%(email)s) имэйл хаягыг шалгаж үргэлжлүүлнэ үү." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Имэйл ирээгүй байна уу? Бид дахин илгээж болно." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Энэ тохиолдол спам хавтсаа шалгана уу." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Энэ мессеж арилахгүй байвал та дахин хуудсыг ачаалуулна уу. " +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Zulip-тай холбогдох боломжгүй байна." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Шинэчлэлтүүд хойшлогдож магадгүй." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Удахгүй дахин оролдоно..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Дахин оролдоно уу" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Мессеж" @@ -1158,6 +1161,159 @@ msgstr "Энгийн хэрэглэгч" msgid "Digest" msgstr "Боловсруулах" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Баяр хүргэе, та шинэ Оффис чат туршилтын бүлэг үүсгэсэн. Анхаарна уу\nэнэ бүлэг 30 хоногийн дараа автоматаар устгагдах болно. Илүү их судлах бол\nТуршилтын бүлгийн талаар энд дарж харна уу!\n " + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Баяр хүргэе, та шинэ Оффис чат бүлэг үүсгэсэн байна\n%(realm_name)s" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Zulip-т тавтай морил!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "Та энэхүү Оффис чат бүлэгт орсон байна: %(realm_name)s\n " + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "Та Оффис Чат вэб, гар утас болон ширээний программ руу нэвтрэхийн тулд дараах мэдээллийг ашиглана." + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Байгууллагын URL: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Таны Хэрэглэгчийн нэр: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Нэвтрэхийн тул өөрийн LDAP аккаунтаа ашиглана уу." + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "Таны бүртгэлтэй имэйл: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Бүлэгрүү очих" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "Хэрэв та Zulip-д шинээр орсон бол манай гарын авлагыг үзээрэй!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "Мөн манайд танай бүлгийг бий болгох гарын авла байгаа." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "Zulip дээрх %(realm_name)s: Таны шинэ байгууллагын дэлгэрэнгүй мэдээлэл" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "Zulip дээр %(realm_name)s: Таны шинэ аккаунтын мэдээллүүд" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "Та Zulip demo группыг үүсгэсэн. Энэ групп нь 30 хоногийн дараа автоматаар устах болно гэдгийг анхаарна уу. Демо группын талаар илүү ихийг эндээс авна уу: %(demo_organizations_help_link)s" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Та %(realm_name)s шинэ Zulip байгууллагыг үүсгэсэн." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Та Zulip байгууллагад элссэн байна %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "Та Оффис чат вэб, гар утас болон ширээний программ руу нэвтрэхийн тулд дараах мэдээллийг ашиглана (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "Хэрэв та Zulip-д шинээр орсон бол манай гарын авлагыг (%(getting_user_started_link)s) үзээрэй!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "Бидэнд мөн Танай байгууллагыг тохируулах (%(getting_organization_started_link)s) гарын авлага байна." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "Асуул байна уу ? бидэнтэй холбогдоно уу %(support_email)s — бид танд туслахдаа таатай байна." + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "Хэрвээ таньд асуух зүйл байвал Оффис чат техникийн албатай %(support_email)s хаягаар холбогдоно уу." + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1165,6 +1321,39 @@ msgstr "Боловсруулах" msgid "Hi," msgstr "Сайн уу," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Хэрэв та энэ өөрчлөлтийг хийх хүсэлт явуулаагүй бол яаралтай %(support_email)s холбогдоно уу." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Хэрэв та энэ өөрчлөлтийг хийх хүсэлт явуулаагүй бол яаралтай %(support_email)s холбогдоно уу." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1178,23 +1367,10 @@ msgstr "Бид %(realm_uri)s дээрх Zulip бүртгэлийн имэйл х msgid "Confirm email change" msgstr "имэйл өөрчлөхийг баталгаажуулна уу" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Хэрэв та энэ өөрчлөлтийг хийх хүсэлт явуулаагүй бол яаралтай %(support_email)s холбогдоно уу." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Шинэ имэйл хаягаа баталгаажуулна уу" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Хэрэв та энэ өөрчлөлтийг хийх хүсэлт явуулаагүй бол яаралтай %(support_email)s холбогдоно уу." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1248,17 +1424,6 @@ msgid "" "— we'd love to help!" msgstr "Та биднээс ямар нэгэн асуух зүйл байвал %(support_email)s хаягаар холбогдоорой. —Бид танд туслахад таатай байх болно." -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "Хэрвээ таньд асуух зүйл байвал Оффис чат техникийн албатай %(support_email)s хаягаар холбогдоно уу." - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1363,225 +1528,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Таны %(email)s и-мэйл хаяг нь %(external_host)s-н зохион байгуулсан дараах Zulip группд бүртгэлтэй байна:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Баяр хүргэе, та шинэ Оффис чат туршилтын бүлэг үүсгэсэн. Анхаарна уу\nэнэ бүлэг 30 хоногийн дараа автоматаар устгагдах болно. Илүү их судлах бол\nТуршилтын бүлгийн талаар энд дарж харна уу!\n " - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Баяр хүргэе, та шинэ Оффис чат бүлэг үүсгэсэн байна\n%(realm_name)s" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Zulip-т тавтай морил!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "Та энэхүү Оффис чат бүлэгт орсон байна: %(realm_name)s\n " - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "Та Оффис Чат вэб, гар утас болон ширээний программ руу нэвтрэхийн тулд дараах мэдээллийг ашиглана." - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Байгууллагын URL: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Таны Хэрэглэгчийн нэр: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Нэвтрэхийн тул өөрийн LDAP аккаунтаа ашиглана уу." - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "Таны бүртгэлтэй имэйл: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Бүлэгрүү очих" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "Хэрэв та Zulip-д шинээр орсон бол манай гарын авлагыг үзээрэй!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "Мөн манайд танай бүлгийг бий болгох гарын авла байгаа." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "Асуул байна уу ? бидэнтэй холбогдоно уу — бид танд туслахдаа таатай байна." - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "Zulip дээрх %(realm_name)s: Таны шинэ байгууллагын дэлгэрэнгүй мэдээлэл" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "Zulip дээр %(realm_name)s: Таны шинэ аккаунтын мэдээллүүд" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "Та Zulip demo группыг үүсгэсэн. Энэ групп нь 30 хоногийн дараа автоматаар устах болно гэдгийг анхаарна уу. Демо группын талаар илүү ихийг эндээс авна уу: %(demo_organizations_help_link)s" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Та %(realm_name)s шинэ Zulip байгууллагыг үүсгэсэн." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Та Zulip байгууллагад элссэн байна %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "Та Оффис чат вэб, гар утас болон ширээний программ руу нэвтрэхийн тулд дараах мэдээллийг ашиглана (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "Хэрэв та Zulip-д шинээр орсон бол манай гарын авлагыг (%(getting_user_started_link)s) үзээрэй!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "Бидэнд мөн Танай байгууллагыг тохируулах (%(getting_organization_started_link)s) гарын авлага байна." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "Асуул байна уу ? бидэнтэй холбогдоно уу %(support_email)s — бид танд туслахдаа таатай байна." - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "Оффис чат дээрх харилцан яригаа санаануудыг ашиглан эмх цэгцтэй байлгах зарим зөвлөмжийг энд оруулав." - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "Оффис чат-д чат өрөөнүүд нь хэн мессеж хүлээн авахыг тодорхойлдог. Санаанууд нь мессеж юуны тухай болохыг хэлж өгдөг." - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "Санаануудыг ашигласнаар та Оффис чат нэг харилцан яриаг нэг дор уншиж болно. Хичнээн өөр хэлэлцүүлэг өрнөж байгаагаас үл хамааран та мессеж бүрийг контекстээр нь харах болно." - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "Оффис чат апп доторх чат өрөө болон санаанууд" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "Шинэ харилцан яриа эхлүүлэхийн тулд шууд Чат өрөөг сонгоод шинэ санааг эхлүүлээрэй. Ингэснээр шинэ харилцан яриа нь үргэлжилж буй хэлэлцүүлгийг тасалдуулахгүй. Санааны нэрийн хувьд: \"Бид ... талаар ярилцаж боломжтой юу?\" гэсэн өгүүлбэрийг дуусгаж болно." - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Богино сэдвүүдийн жишээ" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "Санааны төгс нэрийг сонгохдоо бүү санаа зов. Хэрэв ямар нэг зүйл буруу байвал мессежийг зөөх, санааны нэрийг өөрчлөх, эсвэл санааг өөр чат өрөөрүү шилжүүлэхэд хялбар байдаг." - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Zulip-руу орох" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "Тавтай морилно уу имэйлийн бүртгэлийг цуцлах %(realm_name)s" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "Хэлэлцэж байгаа санаануудаа эмх цэгцтэй байлгаарай" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "Оффис чат-д чат өрөөнүүд нь хэн мессеж хүлээн авахыг тодорхойлдог. Санаанууд нь мессеж юуны тухай болохыг хэлж өгдөг." - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "Санааныхаа төгс нэрийг сонгохдоо бүү санаа зов. Хэрэв ямар нэг зүйл буруу байвал мессежийг зөөх (%(move_messages_link)s), санаануудын нэрийг өөрчлөх (%(rename_topics_link)s) эсвэл санааг өөр чат өрөөрүү шилжүүлэхэд хялбар байдаг (%(move_topic_to_different_stream_link)s)." - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1666,15 +1612,15 @@ msgstr "Энэ урилгын хугацаа хоёр хоногийн дара #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." -msgstr "Хэрэв танд асуулт байгаа бол энэ Оффис чат серверийн администраторуудтай холбогдоно уу %(email)s." +" at %(email)s." +msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" -msgstr "Танд хуваалцах асуулт эсвэл санал хүсэлт байна уу? Бидэнтэй холбоо бариарай — бид туслахдаа баяртай байх болно!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" +msgstr "" #: templates/zerver/emails/missed_message.html:17 #, python-format @@ -1705,21 +1651,45 @@ msgid "" msgstr "Таныг %(mentioned_user_group_name)s чат өрөөнд дурьдсан байна. " #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "%(stream_name)sэнэ чат өрөөнд бүх хүмүүсийг дурьдсан байна." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Та #%(stream_name)s имэйл мэдэгдлийг идэвхжүүлсэн тул үүнийг хүлээн авч байна." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1727,21 +1697,21 @@ msgid "" "preferences." msgstr "Энэ имэйлд шууд хариу бичих, Оффис чат дээр %(realm_name)s үзэх эсвэл имэйлийн тохиргоог удирдах боломжтой." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Оффис чат %(realm_name)s дээр харах, хариу бичих, эсвэл имэйлийн тохиргоог удирдах боломжтой." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Оффис чат %(realm_name)s хариу бичих эсвэл имэйлийн тохиргоог удирдах." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1784,29 +1754,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nЭнэ имэйлд мессежийн агуулгыг оруулаагүй болно, учир нь та имэйлийн мэдэгдэлд гарч ирэх мессежийн агуулгыг идэвхгүй болгосон байна. \nИлүү дэлгэрэнгүйг %(alert_notif_url)s-с үзнэ үү.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Энэ имэйл хаягруу шууд хариу бичих, эсвэл Оффис чат дээр харах %(realm_name)s:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Оффис чат унших, %(realm_name)s хэрэглэгчид хариу бичих :" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Оффис чат дээр %(realm_name)s хэрэглэгчид хариу бичих:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nЭнэ имэйлд хариу бичих хэрэггүй. Энэ Zulip сервер нь ирж буй имэйлийг хүлээн авахаар тохируулагдаагүй байна. Тусламж:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Имэйлийн тохиргоог удирдах:" @@ -1969,6 +1939,14 @@ msgstr "Ашигын бус байгууллагуудад зориулсан О msgid "View Zulip guide for communities" msgstr "Харилцаа холбоонд зориулсан Оффис чатын гарын авлага харах" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "Тавтай морилно уу имэйлийн бүртгэлийг цуцлах %(realm_name)s" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Бизнесийн Zulip гарын авлага" @@ -1997,6 +1975,78 @@ msgstr "Ашигын бус байгууллагад зориулсан Оффи msgid "Zulip guide for communities" msgstr "Харилцаа холбоонд зориулсан Оффис чатын гарын авлага" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "Оффис чат дээрх харилцан яригаа санаануудыг ашиглан эмх цэгцтэй байлгах зарим зөвлөмжийг энд оруулав." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "Оффис чат-д чат өрөөнүүд нь хэн мессеж хүлээн авахыг тодорхойлдог. Санаанууд нь мессеж юуны тухай болохыг хэлж өгдөг." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "Санаануудыг ашигласнаар та Оффис чат нэг харилцан яриаг нэг дор уншиж болно. Хичнээн өөр хэлэлцүүлэг өрнөж байгаагаас үл хамааран та мессеж бүрийг контекстээр нь харах болно." + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "Оффис чат апп доторх чат өрөө болон санаанууд" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "Шинэ харилцан яриа эхлүүлэхийн тулд шууд Чат өрөөг сонгоод шинэ санааг эхлүүлээрэй. Ингэснээр шинэ харилцан яриа нь үргэлжилж буй хэлэлцүүлгийг тасалдуулахгүй. Санааны нэрийн хувьд: \"Бид ... талаар ярилцаж боломжтой юу?\" гэсэн өгүүлбэрийг дуусгаж болно." + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Богино сэдвүүдийн жишээ" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "Санааны төгс нэрийг сонгохдоо бүү санаа зов. Хэрэв ямар нэг зүйл буруу байвал мессежийг зөөх, санааны нэрийг өөрчлөх, эсвэл санааг өөр чат өрөөрүү шилжүүлэхэд хялбар байдаг." + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Zulip-руу орох" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "Хэлэлцэж байгаа санаануудаа эмх цэгцтэй байлгаарай" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "Оффис чат-д чат өрөөнүүд нь хэн мессеж хүлээн авахыг тодорхойлдог. Санаанууд нь мессеж юуны тухай болохыг хэлж өгдөг." + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "Санааныхаа төгс нэрийг сонгохдоо бүү санаа зов. Хэрэв ямар нэг зүйл буруу байвал мессежийг зөөх (%(move_messages_link)s), санаануудын нэрийг өөрчлөх (%(rename_topics_link)s) эсвэл санааг өөр чат өрөөрүү шилжүүлэхэд хялбар байдаг (%(move_topic_to_different_stream_link)s)." + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2385,7 +2435,7 @@ msgid "Incoming webhooks" msgstr "Хүсэлт илгээж буй webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Интерактив ботууд" @@ -2885,292 +2935,295 @@ msgid "" " " msgstr "\nТа мөн Zulip ширээний програмыг ашиглаж болно." -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "Бүртгэл" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} саяхан Zulip-д бүртгүүлсэн. (нийт: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} таны Zulip-д нэгдэх хүсэлтийг хүлээн авлаа!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Буруу захиалга" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "{id} олдсонгүй." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Stream группын нэр '{}' буруу байна" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Stream группын нэр хэт урт (лимит: {} тэмдэгт) байна." +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Default Stream группын нэр '{}' нь NULL (0x00) тэмдэгтүүдийг агуулна." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Буруу stream групп {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' нь default stream бөгөөд '{group_name}' нэмэх боломжгүй" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Default stream групп '{group_name}' аль хэдийн үүссэн байна" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "'{stream_name}' stream нь '{group_name}' default stream группд аль хэдийн байна" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "'{stream_name}' stream '{group_name}' default stream группд байхгүй байна" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Энэ default stream группыг аль хэдийн '{}' гэж нэрлэсэн байна" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Default stream групп '{}' аль хэдийн байна" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Zulip хэрэглэгчдийн аюулгүй байдыг хангахын тулд нэг өдрийн дотор илгээх урилгын тоог хязгаарладаг. Та хязгаарт хүрсэн тул урилга илгээгдээгүй байна." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Та уг үйлдэлийг хийх эрхгүй байна. Админ хэрэглэгчтэй холбогдон шийдвэрлэнэ үү." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Зарим имэйлийг баталгаажуулаагүй тул бид урилга илгээгээгүй." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Бид хэнийг ч урих боломжгүй байсан." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Тэдгээр хаягуудын зарим нь аль хэдийн Zulip-г ашиглаж байгаа тул бид тэдэнд урилга илгээгээгүй. Бид бусад хүмүүст урилга илгээсэн!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Өөрчлөх зүйл байхгүй" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "Хэрэглэгч рүү шууд бичсэн чатыг чат өрөө рүү оруулах боломжгүй. " -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "Хэрэглэгч рүү шууд бичсэн чат сэдэв болгон нэрлэх боломжгүй. " -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Санааны засваргүйгээр түгээх_горим буруу байна." -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Stream-ыг өөрчлөх үед мессежийн агуулгыг өөрчлөх боломжгүй" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Виджетийг засах боломжгүй." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} энэ topic-ыг шийдсэн гэж тэмдэглэсэн." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} энэ topic-ыг шийдэгдээгүй гэж тэмдэглэсэн." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Энэ topic-ыг {user} {new_location} руу зөөсөн." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "{user} энэ topic-оос мессежийг {new_location} руу зөөсөн." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} мессежийг {user} энэ topic-оос {new_location} руу зөөсөн." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Энэ topic-ыг {old_location}-с {user} энд зөөсөн." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "[A message]({message_link}) {old_location}-с {user}-р энэд нүүлгэсэн." -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} мессежийг {old_location}-с {user} энд зөөсөн." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Танай байгууллага мессеж засварлахыг эрхийг хаасан байна" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Та энэ мессежийг засах эрхгүй байна" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Энэ мессежийг засварлах хугацаа өнгөрсөн байна" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Танд уг групп -т wildcard мэншион хийх эрх алга." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Та энэ мессежийг зөөх эрхгүй байна" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Энэ зурвасын stream-д хандах эрх байхгүй тул танд энэ зурвасыг зөөх зөвшөөрөл байхгүй байна" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "Энэ зурвасын дамжуулалтыг засварлах хугацаа өнгөрсөн байна" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Буруу флаг: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Флаг засах боломжгүй: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Мессэж тэмдэглэхэд алдаа гарлаа. Та зөв үйлдэл хийнэ үү. '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Буруу мессеж(үүд)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Мессежийг үзүүлэх боломжгүй" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Яг нэг stream хүлээж байсан" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Stream-ын өгөгдлийн төрөл буруу" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Хүлээн авагчийн өгөгдлийн төрөл буруу байна" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Хүлээн авагчийн лист дотор имэйл хаяг эсвэл хэрэглэгчийн ID байх боломжтой, хоёулаа байх боломжгүй." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Таны {bot_identity} бот {stream_id} stream ID-руу мессеж илгээхийг оролдсон боловч ийм ID-тай stream байхгүй байна." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Таны бот {bot_identity} {stream_name} stream-руу мессеж илгээхийг оролдсон боловч энэ stream байхгүй байна. Stream үүсгэхийн тулд [энд]({new_stream_link}) дарна уу." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Таны {bot_identity} бот {stream_name} руу мессеж илгээхийг оролдсон. Stream байгаа ч гишүүн байхгүй." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Энэ бүлэгт хувийн чатыг идэвхгүй болгосон." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Уг байгууллагад сэдэв шаардлагатай" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: API программист хүчингүй JSON контент илгээсэн" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Үйлдэл хийгдсэн байна." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Адил нэртэй эможи аль хэдийн нэмэгдсэн байна." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "Stream-ын өгөгдлийн төрөл буруу" @@ -3184,8 +3237,8 @@ msgid "Scheduled message was already sent" msgstr "Илгээхээр төлөвлөсөн мессежийг аль хэдийн илгээсэн байна" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "Төлөвлөсөн хүргэх хугацааг тохируулахгүй байх хэрэгтэй." @@ -3204,18 +3257,32 @@ msgstr "Таны {delivery_datetime}-д товлосон мессежийг да msgid "[View scheduled messages](#scheduled)" msgstr "[Илгээхээр төлөвлөсөн мессежүүдийг харах](#scheduled)" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "Чат өрөөг аль хэдийн идэвхгүй болсон" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} энэ stream-ын **{old_policy}**-с **{new_policy}** болгон [хандах зөвшөөрлийг](/help/stream-permissions) өөрчилсөн." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3224,38 +3291,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "Энэхүү чат өрөөний [постлох эрх](/help/stream-sending-policy)-ийг {user} хэрэглэгч нь өөрчилсөн:\n\n* **Хуучин эрх**: {old_policy}.\n * **Шинэ эрх**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} stream-ыг {old_stream_name} {new_stream_name} болгон өөрчилсөн." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Тайлбар байхгүй." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} энэ stream-ын тайлбарыг өөрчилсөн." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Хуучин тайлбар" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Шинэ тайлбар" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Forever" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Энэ чат өрөөн дахь мэдээллүүд цаашид хадгалагдах болно." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3265,56 +3332,59 @@ msgid "" "{summary_line}" msgstr "{user} солиход [мессеж хадгалах хугацаа](/help/message-retention-policy) энэ урсгалд:\n* **Хуучин хадгалах хугацаа**: {old_retention_period}\n* **Шинэ хадгалах хугацаа**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Та энэхүү мессежинд дэд мессеж хавсаргах боломжгүй байна." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Буруу хэрэглэгчийн ID {} байна" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "'{}' хэрэглэгчийн групп аль хэдийн үүссэн байна." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Энэ API нь ирж буй webhook ботуудад боломжгүй." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Аккаунт энэ дэд домэйнтай холбоогүй байна" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "БОТ-оос илгээсэн хүсэлтийг тухайн хэрэглэгч зөвшөөрсөнгүй." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Серверийн администратор байх ёстой" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Зөвшөөрөл хангалтгүй" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Энэ төгсгөлийнцэг нь HTTP үндсэн баталгаажуулалтыг шаарддаг." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Үндсэн баталгаажуулалтын зөвшөөрлийн толгой хэсэг буруу" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Үндсэн баталгаажуулалтын зөвшөөрлийн толгой хэсэг байхгүй байна" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook ботууд зөвхөн webhooks-рүү хандах боломжтой" @@ -3329,95 +3399,101 @@ msgstr "Таны {username} аккаунт идэвхгүй байна. Та msgid "The password is too weak." msgstr "Нууц үг нь хэт хялбар байна." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Дэд домэйн нь 3 болон түүнээс их урттай байна." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Дэд домэйн нь '-' аар эхлэж эсвэл төгсөж болохгүй." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Дэд домэйн нь зөвхөн жижиг үсэг, тоо болон '-' агуулсан байна. " -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Дэд домэйн боломжгүй. Өөрийг сонгоно уу." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Өөрийн жинхэнэ имэйл хаягаа ашиглана уу." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Таны {email} ашиглан бүртгүүлэх гэж буй бүлэг байхгүй байна." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Бүлгийн админаас {email}-д урилга илгээнэ үү." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Таны {email} и-мэйл хаяг нь энэ бүлгийн бүртгэлд бүртгүүлэх боломжтой домайнуудын аль нэгэнд байхгүй байна." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Энэ бүлэгт + агуулсан имэйл хаягийг хориглоно." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Бүх Zulip лицензийг ашиглаж байгаа тул шинэ гишүүд энэ бүлэгт элсэх боломжгүй. Таныг урьсан хүнтэй холбогдож лицензийн тоог нэмэгдүүлэхийг хүсээд дахин оролдоно уу." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Шинэ нууц үг" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Шинэ нууц үгээ баталгаажуулна уу." -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Та нэвтрэх оролдлого хэт олон хийсэн байна. {} секундын дараа дахин оролдоно уу, эсвэл байгууллагын админтай холбогдож тусламж авна уу." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Таны нууц үг хэтэрхий хялбар учир идэвхгүй болсон. Шинэ нууц үг үүсгэхийн тулд нууц үгээ шинэчилнэ үү." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Токен" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "Зөвлөмж: Та олон имэйл хаягийг хооронд нь таслалаар оруулж болно." -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Хамгийн ихдээ 10 имэйл оруулна уу." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Бид тэрхүү Zulip бүлгийг олж чадсангүй." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Буруу имэйл байна '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3481,31 +3557,31 @@ msgstr "Дэд домэйн нь '-' аар эхлэж эсвэл төгсөж msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Домэйн нь зөвхөн үсэг, тоо, '-' болон '.' агуулсан байна. " -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Цагийн тэмдэглэгээ сөрөг байж болохгүй." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Topic нь хоосон байт агуулах ёсгүй" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Stream-ын мессежүүдэд яг 1 stream-ын ID-г зааж өгөх ёстой" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Хэрэглэгч ноорог синхрончлохыг идэвхгүй болгосон." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Ноорог үүсээгүй байна." -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Spoiler агуулгыг харахын тулд Zulip-г нээнэ үү" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip мэдэгдлүүд" @@ -3538,166 +3614,166 @@ msgstr "Аль хэдийн аккаунттай байна." msgid "Account has been deactivated." msgstr "Аккаунт идэвхгүй болсон байна." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Эможи '{}' үүсээгүй байна." +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Буруу эможи." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Буруу эможи нэр." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Энэ эможи идэвхгүй болсон." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Буруу эможи код." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Эможи буруу нэр." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Эможи буруу төрөл." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Бүлгийн админ эсвэл эможи зохиогч байх ёстой" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "Эможи нэр нь үсэг эсвэл цифрээр төгссөн байх ёстой." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "Эможи нэр нь зөвхөн жижиг англи үсэг, цифр, хоосон зай, зураас, доогуур зураас агуулсан байх ёстой." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Эможи нэр дутуу байна" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Үйл явдлын дарааллыг хуваарилж чадсангүй" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Та нэвтрээгүй байна. API нэвтрэлт болон Хэрэглэгчийн Session байх шаардлагатай." -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "'{stream}' stream байхгүй байна" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "'{stream_id}' ID-тай stream байхгүй байна" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Бүлгийн эзэн" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "хэрэглэгч" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Зөвхөн {entity}-г идэвхгүй болгох боломжгүй." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Буруу тэмдэглэгээ оруулсан мэдэгдэл: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API ашиглалт хурдны хязгаараас хэтэрсэн" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Алдаатай JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Бүлгийн гишүүн байх ёстой" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Бүлгийн админ байх ёстой" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Бүлгийн эзэн байх ёстой" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Хэрэглэгчийн нэр эсвэл нууц үг буруу байна" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Бүртгэл идэвхгүй болсон" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Энэ бүлэг идэвхгүй болсон" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Таны серверийн мобайл мэдэгдлийн үйлчилгээний бүртгэл идэвхгүй болсон" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Энэ бүлэгт нууц үгийн баталгаажуулалтыг идэвхгүй болгосон" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Таны нууц үг идэвхгүй болсон тул дахин тохируулах шаардлагатай" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "API key алдаатай байна" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Алдаатай API түлхүүр" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "'{event_type}' энэхүү үйл ажиллагаа нь {webhook_name}  webhook-ээр дэмжигдээгүй." +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Тухайн хүсэлтийг шалгах боломжгүй байна. {webhook_name} уг хүсэлтийг илгээсэн үү?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "дэд домайн буруу байна" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Хандах эрхгүй байна" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3705,6 +3781,14 @@ msgid "" "messages in this topic." msgstr "Танд зөвхөн энэ сэдэв дэх хамгийн сүүлийн үеийн {total_messages_allowed_to_move}/{total_messages_in_topic} мессежийг зөөх зөвшөөрөл байна." +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Үйлдэл хийгдсэн байна." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Ямар ч хариу үйлдэл байхгүй." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitter хэрэглэгчийн нэр" @@ -3746,8 +3830,8 @@ msgid "Settings" msgstr "Тохиргоо" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Мэдэгдэл болон дэлгэцийн тохиргоог тохируулахын тулд Тохиргоо руу очно уу." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3759,264 +3843,272 @@ msgid "" "and give it a go!" msgstr "Шинэ харилцан яриа эхлүүлэхийн тулд энд дарна уу. Topic-оо сонгоод (2-3 үг байвал хамгийн тохиромжтой), цааш үргэлжлүүлээрэй!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integration frameworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Тасралтгүй интеграци" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Хэрэглэгчийн дэмжлэг" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Байршил" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Entertainment" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Communication" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Санхүү" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Хүний нөөц" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Mаркетинг" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Бусад" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Ажиглалт" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Төслийн менежмент" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productivity" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Хувилбарын хяналт" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Мессеж хоосон байж болохгүй" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Мессеж нь хоосон байт агуулах ёсгүй" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "{} операторыг дэмждэггүй." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Буруу оператор: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "'anchor' аргумент дутуу байна." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Хүчингүй anchor" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "Хэрэв та Zulip-д шинээр орсон бол манай [гарын авлагыг]({getting_started_url}) үзээрэй!" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Хэрэв та Zulip-д шинээр орсон бол манай [гарын авлагыг]({getting_started_url}) үзээрэй!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "Бидэнд мөн [Танай байгууллагыг тохируулах]({organization_setup_url}) гарын авлага байна." -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "Бидэнд мөн [Танай байгууллагыг тохируулах]({organization_setup_url}) гарын авлага байна." -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "Энэ нь [тест бүлэг]({demo_organization_help_url}) бөгөөд 30 хоногийн дараа **автоматаар устгагдана** гэдгийг анхаарна уу." -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Сайн уу, Zulip-т тавтай морил!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "Энэ бол надаас шууд илгээсэн мессеж, тавтай морил Бот." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Би бас танд тусалж чадна! Хариу бичихийн тулд энэ зурвасын аль нэг хэсэгт товших буюу `r` товчийг дарна уу." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Миний ойлгож байгаа хэдэн мессеж энд байна:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "Та [гар утас болон ширээний программ](/апп)-г [татаж авах](/апп) боломжтой. Zulip нь вэб хөтөч дээр маш сайн ажилладаг." -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "[Profile settings](#тохиргоо/профайл) руу очоод [profile picture](/help/change-your-profile-picture) нэмж, өөрийн [profile information](/help/edit-your-profile) засна уу." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "[Display settings](#settings/display-settings) руу очиж [switch between the light and dark themes](/help/dark-theme), [pick your favorite emoji theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your language](/help/change-your-language) болон Zulip-ийн хэрэглээгээ өөрчилнө үү." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "Zulip-д stream-үүд [determine who gets a message](/help/streams-and-topics). Эдгээр нь бусад чатын програмын сувгуудтай төстэй." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Browse and subscribe to streams](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "In Zulip, санаанууд [мессежэнд ву багтсанг таньд хэлдэг](/тусламж/урсгалууд-болон-санаанууд). Эдгээр нь имэйлийн гарчигтай маш төстэй, хөнгөн жинтэй санаанууд юм." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "Юу болж байгааг харахын тулд [Сүүлийн санаанууд](#recent)-г үзээрэй! Та зүүн дээд хэсэгт байрлах \"Шууд мессежүүд\" дээр дарж энэ харилцан яриа руу буцаж болно." -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "[keyboard shortcuts](#keyboard-shortcuts) - танилцсанаар та манай оффис чатыг илүү хялбар ашиглах боломжтой." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "`?` дарж [cheat sheet](#keyboard-shortcuts) боломжуудтай танилцаарай." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Оффис чат нь [Markdown](/help/format-your-message-using-markdown) **болд**, *налуу*, тэмдэглэгдсэн жагсаалт болон бусад зүйлсийг ашиглахад хялбар форматыг ашигладаг. Загвар хуудсыг үзэхийн тулд [энд](#message-formatting) дарна уу." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Эможи хариу үйлдэл, кодын блок болон бусад олон зүйлийн талаар мэдэхийн тулд манай [мессеж бичих зөвлөмж](/help/messaging-tips)-г үзээрэй!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Манай [гарын авлагыг](/help/getting-started-with-zulip) үзнэ үү, эсвэл [Тусламжийн төв](/help/)-руу хандаж, илүү ихийг мэдэж аваарай!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Уучлаарай, би таны мессежийг ойлгосонгүй. Дараах командуудын аль нэгийг туршиж үзнэ үү:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Энэ нь stream-ын нэрний хажууд байгаа түгжээний дүрсээр тодорхойлогдсон хувийн stream юм." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Хувийн stream нь зөвхөн stream-ын гишүүдэд харагдана." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Энэ чат өрөөнд тохиргоо хийхийн тулд та [Stream settings]({stream_settings_url}) орж `{initial_private_stream_name}` руу хандана уу." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Энэ бол 'санааны үзүүлэх' сэдэвтэй #**{default_notification_stream_name}** чат өрөөн дэх мессеж юм." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Topic-үүд нь харилцан яриаг эмх цэгцтэй байлгах хэрэгсэл юм." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Та чат өрөөтэй холбоотой мэдээллүүдийг [Streams and topics]({about_topics_help_url}) эндээс харах боломжтой." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Энэ бол 'усанд сэлэх яст мэлхий' сэдэвтэй #**{default_notification_stream_name}** чат өрөөн дэх мессеж юм." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4031,669 +4123,758 @@ msgstr "Ирсэн хариунд буруу JSON байна" msgid "Invalid response format" msgstr "Хариултын формат буруу байна" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Хүчингүй GCM сонголт: өмч {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Хүчингүй GCM сонголтыг бункерлах: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Токен үүсээгүй байна" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Энэ бүлэг мобайл push мэдэгдэлд мессежийн агуулгыг оруулахыг идэвхгүй болгосон" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr " @{user_group_name} группд {full_name} -ийг дурдсан байна:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} таныг дурдсан:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} хүн бүрийг дурдсан:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Тухайн хэрэглэгч энэ үйлдэлийг хийх эрхгүй байна." -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' нь Zulip ашиглахаа больсон." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "Та бүлгээс гадуур шууд мессежүүд илгээх боломжгүй." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push notifications алдаа гарлаа : {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "'{var_name1}', '{var_name2}' тухайн утгуудаас аль нэгийг сонгох боломжгүй байна." -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "'{var_name}' аргумент дутуу байна" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Буруу утга байна '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Буруу ачаалал" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "\"{}\" аргумент JSON буруу байна." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "Илгээхээр төлөвлөсөн мессеж байхгүй байна" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Аккаунтын аюулгүй байдал" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Зөвхөн бүлгийн админууд энэ stream руу зурвас илгээх боломжтой." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Зөвхөн бүлгийн админууд болон үүсгэгчид энэ stream руу зурвас илгээх боломжтой." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Зочид энэ stream-руу зурвас илгээх боломжгүй." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Шинэ гишүүд энэ stream-руу зурвас илгээх боломжгүй." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "'{}' stream-руу илгээх эрхгүй" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "'чат өрөө' нийлүүлнэ үү" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Аль нэгийг нь сонгоно уу: 'stream' эсвэл 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Чат өрөөний ID буруу байна." -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Stream-ын нэрийг '{}' аль хэдийн хэрэглэсэн байна." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "'{}' stream-ын нэр буруу" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Stream(үүд) ({}) байхгүй байна" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Гадна хэрэглэгчдийн Чат өрөө идэвхжээгүй байна." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "'{}' ID-тай default stream групп байхгүй байна." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Stream-ын нэр хоосон байж болохгүй!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Stream-ын нэр хэт урт (хязгаар: {} тэмдэгт)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Stream-ын нэр дэх {} байрлал дахь буруу тэмдэгт!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Topic хоосон байж болохгүй!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Topic-ийн {} байрлал дахь буруу тэмдэгт!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Энэ stream-д элсэгчийн мэдээлэл байхгүй байна" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Хувийн Чат Өрөө-ийн элсэгчдийн жагсаалтыг татаж авах боломжгүй байна" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} нь алдаатай хариулт байна." + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} нь огноо биш" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} алдаатай үйлдэл байна." + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} нь бутархай тоо биш байна." + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} нь хэт бага байна" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} нь бүхэл тоон утга биш байна." + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} нь хэт том байна" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} нь лист биш байна" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Буруу {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} хэт урт байна (limit: {max_length} characters)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} нь мөр биш" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Энэ бүлэгт нэмэх файлын хэмжээ хэтэрсэн байна." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Зургийн кодыг тайлж чадсангүй; Та зургийн файл оруулсан уу?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Зургийн хэмжээ их байна." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Гэмтсэн хөдөлгөөнт дүрс." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Танигдахгүй хөдөлгөөнт зургийн формат." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Буруу хэрэглэгчийн групп" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "Буруу хэрэглэгчийн группын ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" +msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' нь системийн хэрэглэгчийн групп байх ёстой." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." +msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." -msgstr "'{}' тохиргоог '@role:internet' группд тохируулах боломжгүй." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." +msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." -msgstr "'{}' тохиргоог '@role:owners' групп болгож тохируулах боломжгүй." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." -msgstr "'{}' тохиргоог '@role:nobody' группд тохируулах боломжгүй." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Нэр хэт урт байна!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Нэр хэт богино байна!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Нэрэнд буруу тэмдэгт байна!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Формат буруу байна!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Энэ нэрийг аль хэдийн хэрэглэгсэн байна!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Нэр эсвэл хэрэглэгчийн нэр буруу байна" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Буруу integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Тохиргооны параметрүүд дутуу байна: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Буруу {} утга {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Буруу тохиргооны өгөгдөл!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Ботын төрөл буруу байна" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Интерфэйсийн төрөл буруу байна." -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Буруу хэрэглэгчийн ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Ийм бот байхгүй" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Ийм хэрэглэгч байхгүй" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Хэрэглэгч deactivated" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} нь мөр биш" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} хоосон байж болохгүй." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Буруу {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} хэт урт байна (limit: {max_length} characters)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} буруу урттай {length}; байх ёстой урт {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} нь зөв цагийн бүс биш байна" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} нь огноо биш" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} нь бүхэл тоон утга биш байна." - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} нь хэт бага байна" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} нь хэт том байна" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} нь бутархай тоо биш байна." - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} нь алдаатай хариулт байна." - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} hex өнгөний код биш байна" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} нь лист биш байна" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} нь яг {length} ийм урттай байна." -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} алдаатай үйлдэл байна." - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{var_name} - ээс {key_name}  түлхүүр алга болсон байна." -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Гэнэтийн аргументууд: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} нь зөвшөөрөгдсөн_төрөл биш юм" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} буруу)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} нь URL биш байна" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "URL загвар нь '%(username)s'-г агуулсан байх ёстой." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' хоосон байж болохгүй." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Талбарт давхардсан сонголт байх ёсгүй." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' нь '{field_name}'-д тохирох сонголт биш байна." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} нь мөр эсвэл бүхэл тооны жагсаалт биш" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} нь мөр эсвэл бүхэл тоо биш" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} урт байхгүй" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} нь алга байна" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "'{header}' HTTP үйл явдлын толгой хэсэг дутуу байна" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "{} webhook нь цагийг миллисекундээр тооцдог." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "z командын урд налуу зураас байх ёстой." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Ийм команд байхгүй: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF алдаа: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "Групп чат уулзалт" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Zulip Cloud Standard дээр ашиглах боломжтой. Хандахын тулд шинэчилнэ үү." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "GIPHY интеграцийг идэвхгүй болгосон" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "Y үнэлгээтэй GIF-г зөвшөөрөх (Маш залуу үзэгчид)" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "G үнэлгээтэй GIF-г зөвшөөрөх (Ерөнхий үзэгчид)" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "PG үнэлгээтэй GIF-г зөвшөөрөх (Эцэг эхийн зааварчилгаа)" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "PG-13 үнэлгээтэй GIF-г зөвшөөрөх (Эцэг эхийн удирдамж - 13-аас доош насны)" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "R үнэлгээтэй GIF-г зөвшөөрөх (Хязгаарлагдмал)" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Эможи нэр дээрх буруу тэмдэгтүүд" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Буруу үйлдэл хийгдсэн байна. : {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Үл мэдэгдэх алдаа байна" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "Буруу URL загвар байна." -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "URL загвар дахь %(name)r групп нь холбогч загварт байхгүй байна." -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "Холбогч загвар дахь %(name)r групп URL загварт байхгүй байна." -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Хүчингүй дүрүүд нь pygments программын хэл" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Админ, модератор, гишүүд болон зочид" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Админ, модераторууд болон гишүүд" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Админ болон модераторууд" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Зөвхөн админууд" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nobody" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Бүлгийн эзэн" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Бүлгийн админ" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Модератор" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Гишүүн" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Зочин" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-public" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Олон нийтийн" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Хувийн, хуваалцсан түүх" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Хувийн, хамгаалагдсан түүх" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Олон нийтийн, хамгаалагдсан түүх" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Группын бүх гишүүд пост оруулах боломжтой" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Зөвхөн бүлгийн админууд постлох боломжтой" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Зөвхөн бүлгийн админ болон модераторууд постлох боломжтой" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Зөвхөн бүлгийн бүрэн эрхтэй гишүүд постлох боломжтой" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Юникод эможи" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Тусгай эможи" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip нэмэлт эможи" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr " {} ID-тэй хэрэглэгч актив биш байна" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr " {} ID-тэй хэрэглэгч нь бот байна" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Хувилбаруудын жагсаалт" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Хүн сонгох" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Богино текст" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Урт текст" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Өдөр сонгох" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Холбоос" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Гадаад аккаунт" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "төлөөний үг" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Үл мэдэгдэх IP хаяг" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "Үл мэдэгдэх үйлдлийн систем" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Үл мэдэгдэх интернэт хөтөч" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "'queue_id' аргумент алга" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "'last_event_id' аргумент алга" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "{event_id}-с шинэ арга хэмжээг аль хэдийн хассан байна!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "{event_id} үйл ажиллагаа нь тухайн дараалалд байхгүй байна." @@ -4761,89 +4942,123 @@ msgstr "Ийм шошготой талбар аль хэдийн байна." msgid "Default custom field cannot be updated." msgstr "Default custom талбарыг шинэчлэх боломжгүй." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Сүүлчийн гол санааг үйлдвэрлэлд ашиглах боломжгүй" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend идэвхжээгүй." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Тодорхойгүй хүсэлтийн '{}' параметр буруу байна" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Та дор хаяж нэг имэйл хаягийг зааж өгөх ёстой." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr " {} ID-тай групп үүсээгүй байна. Ямар ч урилга илгээгдсэнгүй." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Тийм урилга байхгүй" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "Урилгыг аль хэдийн хүчингүй болгосон байна" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr " Чат өрөөний ID {} буруу байна. Ямар ч урилга илгээгээгүй байна." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Энэ бүлэгт мессеж засварлах түүхийг идэвхгүй болгосон" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Та энэ мессежийг устгах эрхгүй байна\n " -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Энэ мессежийг устгах хугацаа өнгөрсөн байна" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Мессеж аль хэдийн устсан байна" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Хэт олон мессеж илгээсэн (хамгийн ихдээ {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "Anchor-ийг зөвхөн төгсгөлд нь хасч болно" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Ийм сэдэв байхгүй '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Илгээгч алга байна" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Хүлээн авагчийн хэрэглэгчийн ID -г харахыг зөвшөөрөхгүй" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Мессеж хуулбарлахад алдаа гарлаа" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr mirroring нь энэхүү бүлэг зөвшөөрөгдөөгүй байна." @@ -4859,27 +5074,28 @@ msgstr "Хэрэглэгчийн дууг хаасан" msgid "User is not muted" msgstr "Хэрэглэгчийн дуу нээлтэй" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Бот хэрэглэгчидийн хувьд Presence дэмжигдэхгүй." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "{user_id_or_email}-д байгаа мэдээлэл алга" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Үйлчлүүлэгч ямар ч шинэ утгыг дамжуулаагүй." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Үйлчлүүлэгч эможи код эсвэл хариу үйлдлийн төрлийг дамжуулсан тохиолдолд emoji_name-г оруулах ёстой." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Буруу статус: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4895,37 +5111,37 @@ msgid "" "emoji_code" msgstr "Дараах аргументуудын дор хаяж нэг нь байх ёстой: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Ямар ч хариу үйлдэл байхгүй." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Энэ бүлэгт уншсан баримтыг идэвхгүй болгосон." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Буруу хэл '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Дор хаяж нэг баталгаажуулалтын аргыг идэвхжүүлсэн байх ёстой." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Буруу video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Буруу giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Нэг тест бүлэг байх ёстой." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Буруу домэйн: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4937,42 +5153,43 @@ msgstr "{domain} домэйн аль хэдийн танай бүлгийн нэ msgid "No entry found for domain {domain}." msgstr "{domain} домэйн олдсонгүй." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Та нэг файл оруулах боломжтой." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Зөвхөн администраторууд үндсэн эможиг өөрчилж болно." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Байршуулсан файл нь зөвшөөрөгдсөн {} MiB-аас их байна" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Хязгаараас хэтэрсэн байна." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "{email}-с гар аргаар экспорт хийх хүсэлт гаргана уу." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Дата экспортын ID буруу байна" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Экспортыг аль хэдийн устгасан" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "Экспорт амжилтгүй болсон, устгах зүйл алга" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "Экспорт хийгдэж байна" @@ -4980,7 +5197,7 @@ msgstr "Экспорт хийгдэж байна" msgid "You must upload exactly one icon." msgstr "Та яг нэг дүрс байршуулах ёстой." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Холбогч олдсонгүй." @@ -4988,107 +5205,100 @@ msgstr "Холбогч олдсонгүй." msgid "You must upload exactly one logo." msgstr "Та нэг лого оруулах боломжтой" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Invalid playground" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "Хүсэлтийн формат буруу байна" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "Буруу DSN" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Хэрэглэгч '{principal}'-ын өмнөөс асуулга явуулах эрхгүй" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Хувийн stream-ыг default болгох боломжгүй." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Та \"new_description\" эсвэл \"new_group_name\" оруулах хэрэгтэй." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "\"op\"-ын утга буруу. \"add\" эсвэл \"remove\"-ын аль нэгийг зааж өгнө үү." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Default stream-ыг хувийн болгох боломжгүй." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Групп аль хэдийн ийм нэртэй болсон!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Хийх зүйлгүй. \"Нэмэх\" эсвэл \"устгах\"-ын дор хаяж нэгийг зааж өгнө үү." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} хэрэглэгч {stream_name} чат өрөөнд нэгдлээ." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} хэрэглэгч таны урьсан чат өрөөнд нэгдлээ :" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "({stream_name}) группруу хандах боломжгүй" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Та хувийн урсгалдаа Zephyr тусгалын хэрэглэгчдийг урих боломжтой." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} нь дараах группуудыг үүсгэсэн байна: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} нь {stream_str} шинэ групп үүсгэсэн." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "Шинэ группууд" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** stream-ыг {user_name} үүсгэсэн.**Description:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Үл мэдэгдэх захиалгын өмч: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Чат өрөөнд бүртгэгдээгүй байна {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Дэдмессежинд зориулсан json буруу байна" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Танд энэ файлыг харах эрхгүй алга

" @@ -5104,97 +5314,108 @@ msgstr "Хэрэглэгч stream-ын мессежийн мэдэгдэл би msgid "User has disabled typing notifications for direct messages" msgstr "Хэрэглэгч хувийн чатны мэдэгдлийг идэвхгүй болгосон" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Файл олдсонгүй.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Буруу токен" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Буруу файлын нэр" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Та байршуулах файлаа зааж өгөх шаардлагатай" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Тухайн цагт та нэг л файл оруулах боломжтой" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Шинэ мэдээлэл өгөөгүй" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "{user_full_name} таныг {group_name} группд нэмсэн." -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "{user_full_name} таныг {group_name} группээс хассан." -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "{user_id} хэрэглэгч аль хэдийн энэ группын гишүүн болсон байна." -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Энэ группд '{}' ийм хэрэглэгч алга" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "{group_id} хэрэглэгчийн групп аль хэдийн энэ группын дэд групп байна." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "{group_id} хэрэглэгчийн групп нь энэ группын дэд групп биш." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Энэ байгууллагад \"аватар\" -ын өөрчлөлтийг идэвхгүй болгосон" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Энэ байгууллагад имэйл хаягийн өөрчлөлтийг идэвхгүй болгосон." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Хүчингүй default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "'{}' мэдэгдлийн дуу буруу байна" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Хүчингүй имэйл багцлах хугацаа: {} секунд" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Таны Zulip нууц үгийг LDAP дээр удирддаг" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Пассворд буруу!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Та хэт олон оролдлого хийж байна! {} секундын дараа дахин оролдоно уу." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Шинэ нууц үг хэтэрхий сул байна!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Та яг нэг дүрс байршуулах ёстой." @@ -5241,6 +5462,10 @@ msgstr "Суулгасан ботын нэр буруу." msgid "Username already in use" msgstr "хэрэглэгчийн нэрийг аль хэдийн ашиглаж байна" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5251,8 +5476,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Энэ байгууллагад нэг удаагийн цахим шуудангийн хаяг оруулахыг хориглоно" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Имэйл'{}' аль хэдийн ашиглаж байна" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5270,27 +5496,27 @@ msgstr "Invalid Zoom session identifier" msgid "Invalid Zoom credentials" msgstr "Хүчингүй Zoom -ын итгэмжлэл" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Zoom дуудлага үүсгэхэд алдаатай" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton тохиргоо хийгдээгүй байна." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "гарын үсэг буруу" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "BigBlueButton-ийн сервертэй холбогдоход алдаа гарлаа." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "BigBlueButton-ийн сервертэй баталгаажуулахад алдаа гарлаа" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton сервер гэнэтийн алдаа гаргалаа." @@ -5310,28 +5536,28 @@ msgstr "Хүчингүй Kerberos кэш" msgid "We were unable to set up mirroring for you" msgstr "Бид танд зориулж толний тусгалыг тохируулах боломжгүй байна" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "Энэ хувилбарын хяналтын системийн үйлчилгээ үзүүлэгчийн ашигладаг төлөвлөгөөг дэмжихгүй байна." -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Invalid payload" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Тодорхойгүй webhook хүсэлт" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Сэдэв хоосон байж болохгүй." -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Контент нь хоосон байж болохгүй" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Malformed JSON input" @@ -5350,7 +5576,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Newrelic webhook нь [үүсгэсэн|идэвхжүүлсэн|хүлээн зөвшөөрөгдсөн|хаагдсан] төлөвт байхыг шаарддаг." -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "Үйл ажиллагааны түлхүүр payload-д байхгүй байна" @@ -5358,19 +5584,20 @@ msgstr "Үйл ажиллагааны түлхүүр payload-д байхгүй msgid "Unable to handle Pivotal payload" msgstr "Pivotal payload зохицуулах боломжгүй" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Алдаа: 0 эсвэл 1-ээс өөр channels_map_to_topics параметр" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Slack-с ирсэн мессеж" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Тодорхойгүй WordPress webhook үйлдэл: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5387,47 +5614,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Хүчинтэй Zulip сервер API түлхүүрээр баталгаажуулах ёстой" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID буруу" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "токен төрөл буруу байна" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} хост нэр баталгаажаагүй байна" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "user_id эсвэл user_uuid алга байна" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Буруу property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Өгөгдөл ажиллахаа больсон." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Өгөгдөл буруу" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Та нууц үгээ солих хэрэгтэй." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "id_token параметр алга" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP буруу" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "mobile_flow_otp болон desktop_flow_otp -ийг хамт ашиглах боломжгүй." diff --git a/locale/mn/translations.json b/locale/mn/translations.json index d30e790fd0..83fa537823 100644 --- a/locale/mn/translations.json +++ b/locale/mn/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(Нуусан)", "(no description)": "(тайлбар байхгүй)", "(no topic)": "(хэлэлцэх сэдэв байхгүй)", + "(or )": "", "(you)": "(та)", "({message_retention_days} days)": "({message_retention_days} өдөр)", "/dark (Switch to the dark theme)": "/хар (Хараар харуулах)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} энэхүү хаяг нь энэ группд ороогүй байна. Эдгээр мэйлийг группд нэмэхээс нааш мэдэгдэл очихгүй..", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username}{number_of_invites_by_user} хугацаа нь дуусаагүй урилгатай.", "Subscribe": "Элсэх", - "Click here to learn about exporting private streams and messages.": "Энд дарж групп болон чатаа татаж авах заавар харна уу.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Ахиулах : багтаамжаа нэмэх.", " to add a new line": " шинэ мөр нэмэх", " to send": " илгээх", @@ -82,15 +83,18 @@ "Add alert word": "Анхааруулах үг нэмэх", "Add all users": "Бүх хэрэглэгчээ нэмэх", "Add another user...": "Өөр хэрэглэгч нэмэх...", + "Add audio call": "", "Add code playground": "Add code playground", + "Add default streams": "", + "Add email": "", "Add emoji": "Эможи нэмэх", "Add emoji reaction": "Эможи үйлдэл нэмэх", "Add extra emoji for members of the {realm_name} organization.": "{realm_name} байгууллагын хэрэглэгчид зориулж тусгай эможи нэмэх.", "Add global time": "Глобал цаг нэмэх", "Add linkifier": "Холбоос нэмэх", "Add members": "Гишүүн нэмэх", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Гишүүн нэмэх…", - "Add new default stream": "Шинэ default stream нэмэх", "Add new user group": "Шинэ хэрэглэгчийн групп нэмэх", "Add one or more users": "Нэг эсвэл олон хэрэглэгч нэмэх", "Add option": "Сонголт нэмэх", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Add subscribers. Use usergroup or #streamname to bulk add subscribers.", "Add task": "Таск нэмэх", "Add video call": "Видео дуудлага нэмэх", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Амжилттай нэмэгдлээ!", "Added successfully.": "Амжилттай нэмэгдлээ", "Administrator": "Администратор ", @@ -124,6 +129,7 @@ "Alerted messages": "Анхааруулсан мессежүүд", "All": "Бүгд", "All direct messages": "Бүх мессежүүд", + "All groups": "", "All messages": "Бүх мессежүүд", "All messages including muted streams": "All messages including muted streams", "All streams": "Бүх групп", @@ -136,9 +142,11 @@ "Allow subdomains": "Дэд домэйнуудыг зөвшөөрөх", "Allowed domains": "Зөвшөөрөгдсөн дэд домэйнууд", "Allowed domains: {domains}": "Зөвшөөрөгдсөн дэд домэйнууд: {domains}", + "Already members:": "", "Already not subscribed.": "Элсээгүй байна.", "Already subscribed to {stream}": " {stream} группд аль хэдийн элссэн байна.", "Already subscribed users:": "Аль хэдийн элссэн гишүүд:", + "Already subscribed.": "", "Always": "Үргэлж", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API түлхүүрийг ашиглан Zulip бүртгэлд программчлалаар хандах боломжтой. Таны API түлхүүрт хандах эрхтэй хэн бүхэн таны мессежийг унших, таны өмнөөс мессеж илгээх, Zulip дээр таныг дуурайх чадвартай тул та нууц үгээ хамгаалж байгаа шигээ API түлхүүрээ хамгаалах хэрэгтэй.
Хэрэв таны бүртгэлд хандах шаардлагагүй бол Zulip API-д хандахын тулд бот үүсгэж, ботуудын бүртгэл болон API түлхүүрүүдийг ашиглахыг зөвлөж байна.", "An hour ago": "Цагийн өмнө", @@ -150,6 +158,7 @@ "Archive ?": "Идэвтэй ?", "Archive stream": "stream архивлах", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Архивын чат өрөө нь хүн бүрийн бүртгэлийг шууд цуцална. Энэ үйлдлийг буцаах боломжгүй.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "Та үргэлжлүүлэхдээ итгэлтэй байна уу?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": " ''''{stream_name}'''' ийм групп, {count} тооны гишүүнтэй үүсгэхдээ итгэлтэй байна уу?", "Are you sure you want to deactivate this organization?": "Та энэ байгууллагыг идэвхгүй болгох гэж байгаадаа итгэлтэй байна уу?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Дараах хаягруу хүсэлт дахин илгээхдээ итгэлтэй байна уу ?", "Are you sure you want to revoke the invitation to {email}?": "Дараах хаягруу илгээсэн хүсэлтээ цуцлахдаа итгэлтэй байна уу {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Та {referred_by} үүсгэсэн урилгын линкийг цуцлахдаа итгэлтэй байна уу ?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Та #{stream_name}-д бүртгүүлсэн {subscriber_count} хэрэглэгчдэд @-mention мэдэгдэл илгээхдээ итгэлтэй байна уу? Үгүй бол @{wildcard_mention} дурдлагыг арилгахын тулд мессежээ засна уу.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": " доторх бүх мессежийг unstar хийхдээ итгэлтэй байна уу? Энэ үйлдлийг буцаах боломжгүй.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Бүх мессежийг unstar хийхдээ итгэлтэй байна уу? Энэ үйлдлийг буцаах боломжгүй.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Энэ байгууллагад аватар өөрчлөх эрх нь хаалттай байна.", "Avatar from Gravatar": "Avatar from Gravatar", "Back to streams": "Группуудруу буцах", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Та бүлгийн цорын ганц админ учраас бүртгэлээ идэвхгүй болгох боломжгүй.", "Because you are the only subscriber, this stream will be automatically archived.": "Та цорын ганц гишүүн учраас энэ чат өрөөг автоматаар архивлах болно.", "Billing": "Төлбөр", @@ -190,8 +201,11 @@ "Bot owner": "Ботын эзэмшигч", "Bot type": "Бот төрөл", "Bots": "Ботууд", + "Browse 1 more stream": "", "Browse recent conversations": "Саяхны харилцан яриаг үзэх", "Browse streams": "Browse streams", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Бизнес", "Busy": "завгүй", "By deactivating your account, you will be logged out immediately.": "Бүртгэлээ идэвхгүй болгосноор та шууд гарах болно.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Энд дарж тодруулна уу.", "Click on the pencil () icon to edit and reschedule a message.": "Мессежийг харандааны () зураг дээр дараад засах болон дахин төлөвлөх боломжтой.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Хадгалахын тулд оруулах талбарын гадна талд товшино уу. Бид нэмсэн эсвэл хассан бүх хүнд автоматаар мэдэгдэх болно.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Харах эсвэл татаж авахын тулд энд дарна уу.", "Close": "Хаах", "Close modal": "Модалыг хаах", @@ -232,7 +248,7 @@ "Commuting": "Commuting", "Compact": "Товчхон", "Complete": "Дуусгах", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Complete the organization profile to brand and explain the purpose of this Zulip organization.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Зурвас бичих", "Compose your message here": "Зурвасаа энд бичнэ үү", "Compose your message here...": "Зурвасаа энд бичнэ үү...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Илгээхээсээ өмнө эмотиконыг хөрвүүлэх (:) болдог 😃)", "Cookie Bot": "Cookie Bot", "Copied!": "Хуулсан!", + "Copy URL": "", "Copy address": "хаягийг хуулах", "Copy and close": "Хуулаад хаах", "Copy code": "код хуулах", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Одоогоор бүх мессежийг үзэж байна.", "Currently viewing the entire stream.": "Одоогоор чат өрөөг бүхэлд нь үзэж байна.", "Custom": "Тусгай", + "Custom URL": "", "Custom emoji": "Тусгай эможи", "Custom language: {query}": "Тусгай хэл: {query}", "Custom linkifier added!": "Тусгай холбоос нэмэгдсэн!", @@ -302,10 +320,12 @@ "Deactivated": "Идэвхгүй болсон", "Deactivated users": "Идэвхгүй болсон хэрэглэгчид", "December": "12-р сар", + "Default": "", "Default for stream": "Үндсэн чат өрөө", "Default is {language}. Use 'text' to disable highlighting.": "Default is {language}. Use 'text' to disable highlighting.", "Default language for code blocks": "Default language for code blocks", "Default streams": "Default streams", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "Энэхүү бүлэгт зориулсан үндсэн чат өрөө", "Default user settings": "Default user settings", "Default view": "Default view", @@ -314,12 +334,14 @@ "Delete": "Устгах", "Delete alert word": "Анхааруулга үгийг устгах", "Delete all drafts": "Бүх ноорог устгах", + "Delete all selected drafts": "", "Delete code playground?": "code playground устгах уу?", "Delete custom profile field?": "Тусгай профайлын талбарыг устгах уу?", "Delete data export?": "Дата экспортыг устгах уу?", "Delete draft": "Ноорог устгах", "Delete file": "Файл устгах", "Delete file?": "Файл устгах ?", + "Delete group": "", "Delete icon": "Таних тэмдэг устгах", "Delete linkifier?": "Холбоосыг устгах уу?", "Delete logo": "Лого устгах", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Танай байгууллагын хэмжээнээс хамааран экспорт нь секундээс нэг цаг хүртэл үргэлжилж болно.", "Deprecation notice": "Хэрэглээний тухай мэдэгдэл", "Description": "Тайлбар", + "Deselect draft": "", "Desktop": "Десктоп", "Desktop & mobile apps": "Десктоп & утасны апп", "Desktop message notifications": "Десктоп мессежийн мэдэгдэл", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Detailed message formatting documentation", "Detailed search filters documentation": "Нарийвчилсан хайлтын шүүлтүүрийн баримт бичиг", "Direct message": "Хувийн чат", + "Direct message to me": "", "Direct messages": "Хувийн чат", "Direct messages and mentions": "хувийн чат, дурдалт", "Direct messages are disabled in this organization.": "Энэ бүлэгт хувийн чатыг идэвхгүй болгосон.", "Direct messages disabled": "Хувийн чатуудыг идэвхгүй болгосон", + "Disable": "", "Disable notifications?": "Мэдэгдэлийг идэвхгүй болгох уу?", "Disabled": "Хүчингүй", "Discard": "Татгалзах", @@ -360,9 +385,9 @@ "Display my availability to other users": "Бусад хэрэглэгчдэд миний бэлэн байдлыг харуулах", "Display names of reacting users when few users have reacted to a message": "Цөөн хэрэглэгчид мессежэнд хариу үйлдэл үзүүлэхэд хариу үйлдэл үзүүлж буй хэрэглэгчдийн нэрийг харуулна", "Display on user card": "Хэрэглэгчийн карт дээр харуулах", - "Display settings": "Дэлгэцийн тохиргоо", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Та хамгийн сүүлийн үеийн {total_messages_allowed_to_messages, олон тооны, нэг {message}-ийг өөр {# мессеж}} зөөхийг хүсэж байна уу?", "Do you want to add everyone?": "Та хүн бүрийг нэмэхийг хүсч байна уу?", + "Do you want to mark them all as read?": "", "Domain": "Домэйн", "Don’t allow disposable email addresses": "Нэг удаагийн имэйл хаягийг бүү зөвшөөр", "Download": "татах", @@ -388,7 +413,7 @@ "Edit custom profile field": "Тусгай профайлын талбарыг засах", "Edit linkfiers": "Линкийг засах", "Edit message": "Мэссэж засах", - "Edit or reschedule message": "Мессежийг засварлах эсвэл илгээхээр төлөвлөх", + "Edit profile": "", "Edit selected draft": "Сонгосон нооргийг засах", "Edit selected message or view source": "Сонгосон мессежийг засах эсвэл source-ийг харах", "Edit status": "Статус засах", @@ -398,7 +423,6 @@ "Edit your last message": "Сүүлийн мессежээ засах", "Edit your profile": "Профайлаа засах", "Edit {group_name}": "{group_name} засах", - "Edited ({last_edit_timestr})": "Зассан({last_edit_timestr})", "Edited by {full_name}": "Зассан {full_name}", "Education (for-profit)": " (for-profit) боловсрол", "Education (non-profit)": " (non-profit) боловсрол", @@ -461,6 +485,7 @@ "External account type": "Гадаад бүртгэлийн төрөл", "External link": "Гадаад линк", "Failed": "Амжилтгүй", + "Failed adding one or more streams.": "", "Failed to create video call.": "Видео дуудлага үүсгэж чадсангүй.", "Failed to generate preview": "Preview үүсгэж чадсангүй", "Failed to upload %'{file}'": "Дараах файлыг оруулж ирж чадсангүй %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Экспортыг шүүх", "Filter groups": "Группуудыг шүүх", "Filter invites": "Хүсэлтүүдийг шүүх", - "Filter languages": "Хэлнүүдийг шүүх", "Filter linkifiers": "Линкүүдийг шүүх", "Filter members": "Гишүүдийг шүүх", "Filter muted users": "Mute хийсэн хэрэглэгчидийг шүүх", - "Filter roles": "Эрхүүдийг шүүх", "Filter streams": "Группуудын шүүх", "Filter subscribers": "Захиалагчдыг шүүх", "Filter topics": "Сэдвүүдийг шүүх", @@ -500,6 +523,9 @@ "First message": "Эхний мессеж", "First time? Read our guidelines for creating and naming streams.": "Групп үүсгэх, нэрлэх заавар харна уу.", "First time? Read our guidelines for creating user groups.": "Анх удаа хэрэглэнчийн гупп үүсгэх гэж байна уу? Тийм бол эндээс заавар харна уу.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "Жишээлбэл, Python гэж тэмдэглэгдсэн код блокуудын code playgroundsг тохируулахын тулд та дараахийг тохируулж болно:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Дэлгэрэнгүй жишээ болон техникийн дэлгэрэнгүй мэдээллийг авахын тулд code playgrounds нэмэх талаар тусламжийн төвийн баримт бичгийг үзнэ үү.", "For more examples, see the help center documentation on adding linkifiers.": "Дэлгэрэнгүй жишээг тусламжийн төвийн холбогч нэмэх тухай баримт бичгээс харна уу.", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY аттрибут", "GIPHY integration": "GIPHY интеграци", "General": "Үндсэн", + "Generate URL for an integration": "", "Generate email address": "Имэйл хаяг үүсгэх", "Generate invite link": "Урилгын линк үүсгэх", "Generate new API key": "Шинэ API түлхүүр үүсгэх", @@ -542,14 +569,18 @@ "High contrast mode": "Өндөр ялгаатай горим", "Hint": "Зөвлөгөө", "Hint (up to 80 characters)": "Зөвлөгөө (80 хүртэл тэмдэгт)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humans", "Idle": "Idle", "If you don't know your password, you can reset it.": "Хэрэв та нууц үгээ мэдэхгүй бол дахин тохируулж болно.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Идэвхгүй болгосон хэрэглэгчдийг хаах:", "Image": "Зураг", "In a meeting": "Уулзалтанд", "Inactive": "Идэвхгүй", "Inactive bots": "Идэвхгүй ботууд", + "Inbox": "", "Include DMs": "DM оруулсан", "Include content of direct messages in desktop notifications": "Дэлгэцийн мэдэгдэлд хувийн чатны агуулгыг оруулах", "Include message content in message notification emails": "Мессежийн мэдэгдэл имэйлд агуулгыг оруулна уу", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Ирж буй Webhook нь зөвхөн мессеж илгээх боломжтой.", "Initiate a search": "Хайлт эхлүүлэх", "Insert new line": "Шинэ мөр оруулах", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "интеграц", "Interface": "Интерфэйс", "Invalid URL": "Буруу URL", @@ -581,6 +614,8 @@ "Inviting...": "Урьж байна...", "Italic": "Italic", "January": "1-р сар", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "Видео дуудлагад нэгдэх", "Join {realm_name}": "{realm_name} нэгдэх", "Joined": "Нэгдсэн", @@ -599,8 +634,10 @@ "Last 30 days": "Сүүлийн 30 өдөр", "Last 6 months": "Сүүлийн 6 сар", "Last active": "Сүүлийн актив", + "Last edited {last_edit_timestr}": "", "Last message": "Сүүлийн мессеж", "Last modified": "Сүүлийн өөрчлөлт", + "Last moved {last_edit_timestr}": "", "Learn more": "Цааш судлах", "Learn more about mentions here.": "Learn more about mentions here.", "Learn more about starring messages here.": "Learn more about starring messages here.", @@ -623,6 +660,7 @@ "Log out": "Гарах", "Looking for our integrations or API documentation?": "Looking for our integrations or API documentation?", "MOVED": "MOVED", + "Main menu": "", "Manage bot": "Ботыг удирдах", "Manage streams": "Группын удирдлага", "Manage this bot": "Энэ ботыг удирдах", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mention a time-zone-aware time", "Mentioned in": "Mentioned in", "Mentions": "Mentions", - "Menu": "Меню", "Menus": "Менюнүүд", "Message #{stream_name}": "Мессеж #{stream_name}", "Message #{stream_name} > {topic_name}": "Мессеж #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Мессеж {recipient_names}", "Message {recipient_name} ({recipient_status})": "Мессеж {recipient_name} ({recipient_status})", "Messages in all public streams": "Бүх нийтийн чат өрөөн дээрх мессежүүд", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Энэ нь харилцан ярианы харагдац биш тул мессежийг уншсан гэж автоматаар тэмдэглэхгүй. Тохиргоог өөрчлөх", "Messages will not be automatically marked as read. Change setting": "Мессежүүд автоматаар уншсан гэж тэмдэглэгдэхгүй. Тохиргоог өөрчлөх", "Mobile": "Мобайл", @@ -681,11 +720,11 @@ "Move some messages?": "Зарим мессежийг зөөх үү?", "Move this and all following messages in this topic": "Энэ санаа болон дараах бүх мессежийг зөөнө үү", "Move topic": "Topic зөөх", - "Moved ({last_edit_timestr})": "Moved ({last_edit_timestr})", "Moved by {full_name}": " {full_name}-аар зөөгдсөн", "Moving messages": "Мессежийг зөөж байна.", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Захиалагч урьсан байх ёстой; шинэ захиалагчид зөвхөн нэгдсэний дараа илгээсэн мессежийг харах боломжтой; администратор бус хэрэглэгчдээс нуусан", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users", + "Mute": "", "Mute stream": "Mute stream", "Mute this user": "Mute this user", "Mute topic": "Mute topic", @@ -734,38 +773,42 @@ "New password is too weak": "шинэ нууц үг хэтэрхий хялбар байна", "New stream announcements": "Шинэ дамжуулалтын мэдэгдэл", "New stream message": "Шинэ stream мессеж", + "New stream notifications": "Шинэ stream-ийн мэдэгдэл", "New task": "Шинэ таск", "New topic": "Шинэ сэдэв", "New user announcements": "Хэрэглэгчийн шинэ мэдэгдэл", + "New user notifications": "Шинэ хэрэглэгчийн мэдэгдэл", "Next message": "Дараагийн мессеж", "Next unread direct message": "Дараагийн уншаагүй хувийн чат", "Next unread topic": "Дараагийн уншаагүй сэдэв", - "Next week": "Дараа долоо хоног", "No bots match your current filter.": "Таны хайлтанд таарах бот олдсонгүй.", + "No conversations match your filters.": "", "No custom emoji.": "Ийм эможи алга.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Таны хайлтанд таарах default stream олдсонгүй.", "No description.": "Тайлбар байхгүй.", + "No drafts selected": "", "No drafts.": "Ноорог байхгүй.", "No exports.": "No exports.", "No invites match your current filter.": "Танай хайлтанд таарах урилга олдсогүй.", "No language set": "Хэл тохируулагдаагүй байна", "No linkifiers set.": "No linkifiers set.", + "No matching results": "", "No matching users.": "Хэрэглэгч олдсонгүй.", "No one has read this message yet.": "Энэ зурвасыг хараахан уншаагүй хүн байна.", "No owner": "Эзэмшигчгүй", "No playgrounds configured.": "No playgrounds configured.", "No restrictions": "No restrictions", "No scheduled messages.": "Илгээхээр төлөвлөсөн мессеж алга", - "No search results": "Хайлтын үр дүн алга", "No search results.": "хайлтын үр дүн алга", "No stream subscriptions.": "Группын гишүүн алга.", "No streams": "Групп алга", "No topics are marked as resolved.": "Ямар ч сэдвийг шийдсэн гэж тэмдэглээгүй.", - "No topics match your current filter.": "Таны хайлтанд таарах сэдэв олдсонгүй.", "No user group subscriptions.": "Хэрэглэгчийн групп элсэлт байхгүй.", "No user groups": "Хэрэглэгчийн групп алга", "No user to subscribe.": "Бүртгүүлэх хэрэглэгч алга.", "No users match your current filter.": "Таны одоогийн хайлтанд таарах хэрэглэгч олдсонгүй.", + "No users to add.": "", "No, I'll catch up.": "No, I'll catch up.", "Nobody": "Nobody", "Nobody in this Zulip organization will be able to see this email address.": "Энэ Оффис чат бүлгийн хэн ч энэ имэйл хаягийг харах боломжгүй.", @@ -784,6 +827,7 @@ "Notify stream": "Чат өрөөний мэдэгдэл", "Notify this user by email?": "Энэ хэрэглэгчид имэйлээр мэдэгдэх үү?", "November": "Арваннэгдүгээр сар", + "Numbered list": "", "October": "Аравдугаар сар", "Old password": "Хуучих нууц үг", "Once you leave this group, you will not be able to rejoin.": "Нэгэнт энэ группээс гарвал дахин нэгдэх боломжгүй.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Зөвхөн админууд энэ тохиргоог өөрчлөх боломжтой.", "Only stream members can add users to a private stream": "Зөвхөн stream-ийн гишүүд хувийн stream-руу хэрэглэгч нэмэх боломжтой", "Only stream members can add users to a private stream.": "Зөвхөн чат өрөөний гишүүд хувийн чат өрөөрүү хэрэглэгч нэмэх боломжтой.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Зөвхөн энэ чат өрөөний дагагчид чат өрөөний зөвшөөрлийг засах боломжтой.", "Open": "Нээлттэй", "Open message menu": "Мессежийн менюг нээнэ", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Дор хаяж нэг хүчинтэй хүлээн авагчийг зааж өгнө үү.", "Political group": "Улс төрийн групп", "Posted by {full_name}": "{full_name} постод", + "Preferences": "", "Press > for list of topics": "Press > for list of topics", "Prevent users from changing their avatar": "Хэрэглэгчид аватараа өөрчлөхөөс сэргийлнэ үү", "Prevent users from changing their email address": "Хэрэглэгчдийг имэйл хаягаа өөрчлөхөөс урьдчилан сэргийлэх", @@ -869,6 +915,7 @@ "Previous message": "Өмнөх мессеж", "Privacy": "Хувийн", "Privacy settings": "Хувийн тохиргоо", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Хувийн, хамгаалагдсан түүх", "Private, shared history": "Хувийн, хуваалцсан түүх", "Profile": "Профайл", @@ -883,6 +930,7 @@ "Reactivate bot": "Бот дахин идэвхжүүлэх", "Reactivate this bot": "Энэ ботыг дахин идэвхжүүлэх", "Reactivate this user": "Энэ хэрэглэгчийг дахин идэвхжүүлэх", + "Reactivate user": "", "Reactivate {name}": "Дахин идэвхжүүлэх {name}", "Read receipts": "Баримт уншина уу", "Read receipts are currently disabled in this organization.": "Уншсан мэдэгдлийг одоогоор энэ бүлэгт идэвхгүй болгосон байна.", @@ -930,6 +978,7 @@ "Saved as draft": "Ноорог болгон хадгаллаа", "Saved. Please reload for the change to take effect.": "Saved. Please reload for the change to take effect.", "Saving": "Хадгалж байна", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "{formatted_send_later_time} илгээхээр төлөвлөх", "Schedule message": "Илгээхээр төлөвлөсөн мессеж", "Scheduled messages": "Илгээхээр төлөвлөсөн мессежүүд", @@ -948,10 +997,15 @@ "See how to configure email.": "Хэрхэн имэйл тохируулах тухай харах.", "Select a stream": "Нэг чат өрөөг сонгох", "Select a stream below or change topic name.": "Stream сонгох эсвэл сэдийн нэр өөрчлөх.", - "Select date and time": "Огноо сонгох", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Эможи сонгох", "Select language": "Хэлээ сонгох", + "Select stream": "", "Send": "Илгээх", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Шинэ санаанд автомат мэдэгдэл илгээх", "Send automated notice to old topic": "Хуучин санааруу автомат мэдэгдэл илгээх", "Send digest emails when I'm away": "Намайг байхгүй үед имэйл илгээх", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Хуулсан зургуудыг харах", "Show starred message count": "Онцолсон зурвасын тоог харах", "Show status text": "Статус текстийг харуулах", + "Show unread counts for": "", "Show/change your API key": "API key-ээ харах/өөрчлөх", "Sign up": "Бүртгүүлэх", "Silent mentions do not trigger notifications.": "Silent mentions do not trigger notifications.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Долоо хоногийн ачааллын дагуу эрэмбэлэх", "Sort by name": "Нэрээр эрэмбэлэх", "Sort by number of subscribers": "Элсэгчдийн тоогоор эрэмбэлэх", + "Sort by unread message count": "", "Spoiler": "Спойлер", "Star": "Star", "Star selected message": "Сонгогдсон бичвэрийг онцлох", @@ -1024,8 +1080,10 @@ "Subscribe": "Элсэх", "Subscribe them": "Тэднийг элсүүлэх", "Subscribe to/unsubscribe from selected stream": "Сонгосон stream -д элсэх/stream -с гарах", + "Subscribe {full_name} to streams": "", "Subscribed": "Элссэн", "Subscribed streams": "Элссэн stream -үүд", + "Subscribed successfully!": "", "Subscriber count": "Элсэгчдийн тоо", "Subscribers": "Элсэгчид", "Successfully subscribed user:": "Амжилттай дагасан хэрэглэгч:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Одоогоор анхааруулах үг байхгүй байна.", "There are no messages here.": "Энд ямар ч мессеж алга.", "There are no streams you can view in this organization.": "Энэ бүлэгт таны үзэх боломжтой чат өрөө байхгүй.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Ийм нэртэй үндсэн эможи байдаг. Та үүнийг өөр эможигоор өөрчлөхийг хүсэж байна уу? :{emoji_name}: үндсэн эможи цаашид ажиллахгүй.", "They administer the following bots:": "Тэд дараах ботуудыг удирддаг:", "This Zulip server is running an old version and should be upgraded.": "Энэхүү Zulip сервер нь хуучин хувилбарыг ажиллуулж байгаа тул шинэчлэх шаардлагатай.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Энэ нь олон нийтэд нээлттэй харилцан яриа биш юм.", "This is what a Zulip notification looks like.": "Zulip мэдэгдэл ингэж харагдаж байна.", "This message could not be sent at the scheduled time.": "Энэ мессежийг товлосон цагт илгээх боломжгүй байна.", - "This message is no longer scheduled for {deliver_at}.": "Энэ мессежийг {deliver_at}-д илгээхээр төлөвлөөгүй.", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Та илгээгчийн дууг хаасан тул энэ зурвасыг нуусан.", "This organization is configured so that administrators and moderators can add custom emoji.": "Энэ бүлэг нь администраторууд болон зохицуулагчид захиалгат эможи нэмэх боломжтой байхаар тохируулагдсан.", "This organization is configured so that administrators and moderators can modify user groups.": "Энэ бүлэг нь администраторууд болон зохицуулагчид хэрэглэгчийн группыг өөрчлөх боломжтой байхаар тохируулагдсан.", @@ -1103,7 +1162,6 @@ "Time zone": "Цагийн бүс", "Time's up!": "Цаг дууслаа!", "Tip: You can also send \"/poll Some question\"": "Зөвлөмж: Та мөн \"/ санал асуулга Зарим асуулт\" илгээж болно.", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Кодын блок нэмэхийн тулд, хэл нэмэх first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Хэрэглэгч урихын тулд, лицензийн тоог нэмнэ үү эсвэл идэвхгүй хэрэглэгчдийг deactive болгоно уу.", "To preserve your reading state, this view does not mark messages as read.": "Таны унших төлвийн хадгалахын тулд, уг харагдац зурвасыг уншсан гэж тэмдэглэхгүй.", "Today": "Өнөөдөр", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Toggle subscription", "Toggle the gear menu": "Toggle the gear menu", "Toggle topic mute": "Toggle topic mute", - "Tomorrow": "Маргааш", "Tomorrow at {time}": "Маргааш {time}", "Topic": "Сэдэв", "Topic muted": "Сэдэв mute хийгдсэн", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Үл үзэгдэх горимыг унтраа", "Two factor authentication": "2 давхар танин баталгаажуулалт", "Type": "Төрөл", + "URL": "", + "URL for your integration": "", "URL pattern": "URL pattern", - "URL prefix": "URL префикс", "URL template": "URL загвар", "USERS": "ХЭРЭГЛЭГЧИД", "Uncheck all": "Бүгдийг uncheck хийх", @@ -1139,6 +1197,7 @@ "Unmute this user": "Уг хэрэглэгчийн mute-г унтраах", "Unmute topic": "Сэдвийн mute-г унтраах", "Unmuted": "Дууг нээсэн", + "Unmuted streams and topics": "", "Unpin stream from top": "Топ тэмдэглэгээтэй групп -г хасах", "Unread": "Уншаагүй", "Unread count badge (appears in desktop sidebar and browser tab)": "Unread count badge (appears in desktop sidebar and browser tab)", @@ -1199,7 +1258,7 @@ "View all streams": "Бүх чат өрөөг харах", "View direct messages": "Хувийн чатуудаа харах", "View drafts": "Ноорог харах", - "View edit history": "Засварласан түүхийг харах", + "View edit and move history": "", "View file": "Файлыг нээх", "View in playground": "View in playground", "View in {name}": "View in {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web-public", "Wednesday": "Лхагва гараг", "Week of {date}": "Week of {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Эргээд тавтай морил! Танд {unread_msgs_count} уншаагүй зурвасууд байна. Тэдгээр бүх зурвасыг уншсан гэж тэмдэглэх үү?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Хүмүүс таныг нэрлэхдээ ямар төлөөний үгийг ашиглах ёстой вэ?", "When you deactivate , they will be immediately logged out.": "Та -г deactivate хийхэд тэдний бүртгэл гарна.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "@all гэх мэт орлуулагч тэмдэгтийг мэдэгдлийн зорилгоор дурдагдсан гэж үзнэ.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Энэ чат өрөөрүү илгээсэн Оффис чат зурваст имэйлийн аль хэсгийг оруулах ёстой вэ?", "Who can access the stream?": "Хэн групп -т хандах эрхтэй вэ?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Хэн хэрэглэгчдийн групп үүсгэх, удирдах эрхтэй вэ", "Who can create private streams": "Хэн хувийн групп үүсгэх эрхтэй вэ", "Who can create public streams": "Хэн нийтийн групп үүсгэх эрхтэй вэ", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Хэн web-public групп үүсгэх эрхтэй вэ", "Who can delete their own messages": "Хэн зурвасуудаа устгах эрхтэй вэ", - "Who can invite users to this organization": "Хэн хэрэглэгчдийг уг байгууллагад урих боломжтой вэ", "Who can move messages to another stream": "Хэн мессежийг өөр чат өрөөрүү зөөх боломжтой", "Who can move messages to another topic": "Хэн мессежийг өөр чат өрөөрүү шилжүүлэх боломжтой", "Who can post to the stream?": "Хэн групп -т пост оруулж болох вэ?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "Хэн бусдыг энэ чат өрөөний бүртгэлээс хасах боломжтой вэ?", "Who can use @all/@everyone mentions in large streams": "Хэн @all/@everyone меншионыг том групп -т ашиглаж болох вэ", "Who can use direct messages": "Хэн хувийн чат ашиглах боломжтой", @@ -1268,14 +1329,17 @@ "You and": "Та болон", "You and {display_reply_to}": "Та болон {display_reply_to}", "You and {recipients}": "Та болон {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "Та хувийн мессеж, @‑, дурдалт, сэрэмжлүүлгийн бүх мэдэгдлийг идэвхгүй болгох гэж байна, энэ нь танд чухал анхаарал хандуулах шаардлагатай мессежийг алдахад хүргэж болзошгүй юм. Хэрэв та бүх дэлгэцийн мэдэгдлийг түр идэвхгүй болгохыг хүсвэл \"Бүү саад бол\"-г асаана уу.", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "Та энэ байгууллагад хувийн чат илгээх эрхгүй.", "You are not currently subscribed to this stream.": "Та уг групп -т элсээгүй байна.", "You are not subscribed to any streams.": "Та ямар ч чат өрөөнд бүртгүүлээгүй байна.", "You are not subscribed to stream ": "Та чат өрөөнд бүртгүүлээгүй байна", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Та шийдэгдсэн сэдэв рүү мессеж илгээж байна. Та байгаагаар нь илгээх эсвэл эхлээд сэдвийг шийдвэрлэх боломжтой.", "You are using an old version of the Zulip desktop app with known security bugs.": "Та Zulip -ын аюулгүй байдлын цоорхойтой хуучин хувилбарыг ашиглаж байна.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Та уг групп -т хараахан элсээгүй байна, мөн хэн ч үүний талаар ярилцаагүй байна!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "You can also make tables with this Markdown-ish table syntax.", "You can combine search filters as needed.": "Шаардлагатай бол хайлтын шүүлтүүрийг нэгтгэж болно.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Та энэ бүлэгт Оффис чат бүртгэл үүсгэснээр энэ нийгэмлэгт бүрэн нэвтэрч, харилцан ярианд оролцох боломжтой.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "Танд энэ бүлэгт {N, plural, one {# hour} other {# hours}}-с хуучин мессеж бүхий санаануудыг шийдвэрлэх зөвшөөрөл байхгүй байна.", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "Танд энэ бүлэгт {N, plural, one {# minute} other {# minutes}}-с хуучин мессеж бүхий сэдвүүдийг шийдвэрлэх зөвшөөрөл байхгүй байна.", "You do not have permission to use wildcard mentions in this stream.": "Танд уг групп -т wildcard мэншион хийх эрх алга.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "Танд хараахан хувийн чатын харилцаа байхгүй байна.", + "You follow this topic": "", "You get": "You get", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Та сэдвүүдийг mute хийлээ.", + "You have muted this topic": "", "You have no active bots.": "Танд идэвхтэй бот алга.", "You have no direct messages including {person} yet.": "Танд {person}-г оруулаад хувийн чат байхгүй байна.", "You have no direct messages with these users yet.": "Танд эдгээр хэрэглэгчидтэй хувийн чат байхгүй байна.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Та ямар ч хэрэглэгчийг mute хийгээгүй байна.", "You have not sent any direct messages to yourself yet!": "Та өөр рүүгээ хувийн чат илгээгээгүй байна!", "You have not uploaded any files.": "Та ямар ч файл оруулаагүй байна.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Таныг меншион хийгээгүй байна!", "You haven't received any messages sent by {person} yet.": "Та {person}-с илгээсэн мессеж хараахан ирээгүй байна.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Та групп -т элсэхгүйгээр групп үүсгэхийн тулд байгууллагын админ байх ёстой", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Та зурвас илгээхийн тулд Zephyr mirror -ыг ажиллуулах хэрэгтэй", "You searched for:": "Таны хайсан хайлтууд:", "You subscribed to stream ": "Та чат өрөөнд нэгдлээ.", "You type": "You type", "You unsubscribed from stream ": "Та чат өрөөнөөс гарлаа.", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "Та шинэ мессежийн талаар мэдэгдэл хүлээн авахгүй.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Та уг групп -т элсээгүй байгаа тул бусад хэрэглэгч таны зурваст хариу бичсэн тохиодолд мэдэгдэл очихгүй байх болно", "Your API key:": "Таны API key:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Таны Оффис чат бүртгэл идэвхгүй болсон тул та цаашид нэвтрэх боломжгүй болно.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "Таны мессежийг {deliver_at}-д илгээсэн.", "Your message is taking longer than expected to be sent. Sending…": "Таны мессеж илгээхэд удаан байна. Илгээж байна...", "Your message was sent to a stream you have muted.": "Таны дууг хаасан чат өрөөрүү таны мессежийг илгээсэн.", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Оффис чат сервер {display_version}", "Zulip Server {display_version} (modified)": "Оффис чат сервер {display_version} (өөрчлөгдсөн)", "Zulip Server {display_version} (patched)": "Оффис чат сервер {display_version} (patched)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "Оффис чат нь танд сонирхолгүй мэдэгдлийн мессежийг хүлээн авахгүйн тулд санаа болон чат өрөөний дууг хаах боломжийг олгодог. Чат өрөөний дууг хаах нь тухайн чат өрөөний бүх санааг үр дүнтэйгээр хаадаг. Та мөн дууг нь хаасан чат өрөөний санааны дууг гараар хаах эсвэл дууг нь хаасан чат өрөөний дууг нээх боломжтой. Илүү их судлах ", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip хэрэглэгч, хаягийг баталгаажуулах болон мэдэгдэл хүргэхийн тулд имэйл илгээх хэрэгтэй.", "Zulip needs your permission to enable desktop notifications.": "Дэлгэцэнд мэдэгдэл хүргэхийн тулд хандах эрхийг идэвхжүүлнэ үү.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip-ын орчуулгыг манай сайн дурынхан орчуулсан болно. Хэрэв та тусламаар байвал, холбоосыг үзээрэй. Орчуулгын зааварчилгаа .", "[Configure]": "[Тохируулах]", - "[Disable]": "[Идэвхгүй болгох]", - "[More…]": "[Илүү…]", "[Quoting…]": "[Ишлэл…]", - "[Unset]": "[Тохируулаагүй]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "and {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "Чат өрөөрүү буцах", "beta": "бета", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "зохицуулагч болон админуудад хамаарахгүй", "group direct messages with {recipient}": "{recipient}-тэй хувийнн чат групп", "he/him": "Тэр", - "in 1 hour": "1 цагийн дотор", - "in 20 minutes": "20 минутын дотор", - "in 3 hours": "3 цагийн дотор", "invisible mode off": "үл үзэгдэх горимыг унтраасан", "leafy green vegetable": "leafy green vegetable", "marketing": "маркетинг", "more conversations": "илүү их харилцан яриа", "more topics": "бусад сэдвүүд", - "or": "эсвэл", "she/her": "Тэр эмэгтэй/түүний", "they/them": "Тэд/тэдний", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Дууслаа! {N} мессежийг уншсан гэж тэмдэглэсэн.} other {Дууслаа! {N} мессежийг уншсан гэж тэмдэглэсэн.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} өдрийн өмнө", "{full_name} is typing…": "{full_name} бичиж байна…", "{hours} hours ago": "{hours} цагийн өмнө", - "{items_selected} selected": "{items_selected} сонгогдсон", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# мессежүүд} other {# мессежүүд}} will remain in the current topic.", "{minutes} min to edit": "{minutes} min to edit", "{minutes} minutes ago": "{minutes} минутын өмнө", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Энэ мессежийг {num_of_people}  хүмүүс уншсанбайна} other {Энэ мессежийг {num_of_people}  хүмүүс уншсанбайна}}", "{seconds} sec to edit": "{seconds} sec to edit", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} байршилын цаг", "{username} [said]({link_to_message}):": "{username} [said]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} {emoji_name} дарлаа" diff --git a/locale/mobile_info.json b/locale/mobile_info.json index 42f0672153..a220c1c654 100644 --- a/locale/mobile_info.json +++ b/locale/mobile_info.json @@ -32,7 +32,7 @@ "total": 388 }, "de": { - "not_translated": 14, + "not_translated": 10, "total": 388 }, "en_GB": { @@ -164,7 +164,7 @@ "total": 388 }, "zh_Hans": { - "not_translated": 102, + "not_translated": 57, "total": 388 }, "zh_Hant": { diff --git a/locale/nl/LC_MESSAGES/django.po b/locale/nl/LC_MESSAGES/django.po index ee7ba625e4..5619aaf0f9 100644 --- a/locale/nl/LC_MESSAGES/django.po +++ b/locale/nl/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: André Koot , 2017,2021\n" "Language-Team: Dutch (http://app.transifex.com/zulip/zulip/language/nl/)\n" @@ -21,46 +21,47 @@ msgstr "" "Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Geen toegang voor gast gebruikers." -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Ongeldige organisatie" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Publieke kanalen" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Privékanalen" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Onbekende grafiek naam: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Starttiijd ligt na de eindtijd. Start: {start}, Eind: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Geen statistieken beschikbaar. Pas dit aan bij de admin instellingen." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Ongeldige parameters" @@ -121,29 +122,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Je moet factureren voor minimaal {} gebruikers." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Facturen met meer dan {} licenties kunnen vanaf deze pagina niet worden verwerkt. Neem contact op met {} om de upgrade te voltooien." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Er is iets mis gegaan. Neem alsjeblieft contact op met {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Er is iets mis gegaan. Herlaad de pagina, alsjeblieft." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Er is iets mis gegaan. Wacht alsjeblieft een paar seconden en probeer het opnieuw." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -175,7 +178,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -191,14 +194,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -210,7 +213,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -260,7 +263,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Interne serverfout" @@ -562,9 +565,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -582,9 +585,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -594,9 +597,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -859,51 +862,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Aanmelden met %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Bedankt voor je aanmelding" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Nog geen e-mail? We kunnen het opnieuw versturen." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Voor de zekerheid kun je even in je Spammapje kijken." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Nu proberen." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Berichten" @@ -1151,6 +1154,159 @@ msgstr "Gewone gebruikers" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Welkom bij Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Organisatie URL: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1158,6 +1314,39 @@ msgstr "" msgid "Hi," msgstr "Hallo," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1171,22 +1360,9 @@ msgstr "" msgid "Confirm email change" msgstr "Bevestig aanpassing e-mailadres" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1241,17 +1417,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1356,225 +1521,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Welkom bij Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Organisatie URL: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Naar Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1659,14 +1605,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1698,21 +1644,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1720,21 +1690,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1777,29 +1747,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1962,6 +1932,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1990,6 +1968,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Naar Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2378,7 +2428,7 @@ msgid "Incoming webhooks" msgstr "Inkomende webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interactieve bots" @@ -2878,290 +2928,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Veld id {id} niet gevonden." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Sommige e-mails zijn niet gevalideerd, dus we hebben geen uitnodigingen gestuurd." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "We konden niemand uitnodigen." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Sommige van die adressen gebruiken al Zulip, dus we hebben ze geen uitnodiging gestuurd. We hebben alle anderen wel uitnodigingen gestuurd!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Niets te wijzigen" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Je organisatie heeft het bewerken van berichten uitgeschakeld" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Je bent niet bevoegd dit bericht te bewerken" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Ongeldig(e) bericht(en)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Kan bericht niet opmaken" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3177,8 +3230,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3197,18 +3250,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3217,38 +3284,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Geen beschrijving." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3258,56 +3325,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Deze API is niet beschikbaar voor inkomende webhook-bots." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Account is niet verbonden met dit subdomein" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Dit eindpunt accepteert geen botverzoeken." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Onvoldoende rechten" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Dit endpoint vereist HTTP basic authenticatie." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Ongeldige autorizatie header voor basic auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook-bots hebben alleen toegang tot webhooks" @@ -3322,94 +3392,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomein moet minimaal 3 tekens lang zijn." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomein kan niet beginnen of eindigen met een '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomein mag alleen kleine letters, cijfers en '-en' bevatten." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomein niet beschikbaar. Kies een ander." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Gebruik je echte e-mailadres." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "De organisatie waar je bij wilt aansluiten met {email} bestaat hier niet." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Vraag een uitnodiging voor {email} aan bij de organisatiebeheerder." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Je e-mailadres, {email}, bevindt zich niet in een van de domeinen die zich mogen registreren voor accounts in deze organisatie." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nieuw wachtwoord" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Geef maximaal 10 e-mailadressen op." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3474,31 +3550,31 @@ msgstr "Subdomeinen kunnen niet beginnen of eindigen met een '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domein kan alleen bestaan uit letters, cijfers, \".\" en \"-\"S." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip meldingen" @@ -3531,166 +3607,166 @@ msgstr "Heeft al een account." msgid "Account has been deactivated." msgstr "Account is gedeactiveerd." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emoji-naam ontbreekt" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Kan wachtrij voor gebeurtenissen niet toewijzen" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Niet ingelogd: API-authenticatie of gebruikerssessie vereist" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Kanaal '{stream}' bestaat niet" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Kanaal met ID '{stream_id}' bestaat niet" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "organisatie-eigenaar" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "gebruiker" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API-gebruik overschrijdt gebruikslimiet" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Misvormde JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Account is gedeactiveerd" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Deze organisatie is gedeactiveerd" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Ongeldige API key" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Misvormde API key" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Ongeldig subdomein" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Verboden toegang" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3698,6 +3774,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3739,7 +3823,7 @@ msgid "Settings" msgstr "Instellingen" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3752,264 +3836,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integratieframeworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Continu integratie" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Klantenondersteuning" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Inzet" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Communicatie" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financieel" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Diversen" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Projectmanagement" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productiviteit" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Versiebeheersing" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Bericht kan niet leeg zijn" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Bericht kan geen 'null bytes' bevatten" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Ongeldige smalle operator: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4024,669 +4116,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token bestaat niet" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} vermeldde jou:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} vermeldde iedereen:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Gebruiker niet geautoriseerd voor deze opvraag" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Ontbrekend '{var_name}' argument" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Slechte waarde voor '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argument \"{}\" is geengeldige JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Account Security" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Naam te lang!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Naam te kort!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Ongeldige tekens in de naam!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Verkeerde naam of gebruikersnaam" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Ongeldig bottype" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Ongeldig interfacetype" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Niet zo'n bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Niet zo'n gebruiker" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} is onjuist)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} is geen URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF fout: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Ongeldigetekens in emoji-naam" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Beheerders, moderators, leden en gasten" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Beheerders, moderators en leden" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Beheerders en moderators" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Alleen beheerders" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Niemand" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Organisatie-eigenaar" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Organisatiebeheerder" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderator" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Lid" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Gast" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Publiek" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Alle kanaalleden kunnen plaatsen" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Alleen organisatiebeheerders kunnen plaatsen" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Alleen organisatiebeheerders en moderators kunnen plaatsen." -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Aangepaste emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip extra emoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Ontbrekend 'queue_id' argument" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Ontbrekend 'last_event_id' argument" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4754,66 +4935,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Je moet minimaal één e-mailadres opgeven." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Bewerkingsgeschiedenis van berichten is uitgeschakeld in deze organisatie" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4821,22 +5035,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Ontbrekende afzender" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Ongeldig gespiegeld bericht" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4852,26 +5067,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Aanwezigheid wordt niet ondersteund voor botgebruikers." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4888,37 +5104,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Er moet minimaal één authenticatiemethode worden ingeschakeld." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Ongeldig domein: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4930,42 +5146,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Je moet exact één bestand uploaden." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4973,7 +5190,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Je moet precies één pictogram uploaden." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4981,107 +5198,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "Je moet precies één logo uploaden." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Gebruiker niet geautoriseerd om zoekopdrachten uit te voeren namens '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Het kanaal heeft die naam al!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Niets te doen. Geef minimaal één op van \"toevoegen\" of \"verwijderen\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Je bent niet geautoriseerd om dit bestand te zien.

" @@ -5097,97 +5307,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Bestand niet gevonden.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Je moet een te uploaden bestand opgeven" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Je mag maar één bestand tegelijk uploaden" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Geen nieuwe gegevens opgegeven" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "E-mail adreswijzigingen uitgeschakeld in deze organisatie." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Verkeerd wachtwoord!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Je moet precies één avatar uploaden" @@ -5234,6 +5455,10 @@ msgstr "" msgid "Username already in use" msgstr "Gebruikersnaam al in gebruik" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5244,7 +5469,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5263,27 +5489,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5303,28 +5529,28 @@ msgstr "Ongeldige Kerberos cache" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Onbekend webhook-verzoek" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Onderwerp kan niet leeg zijn" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Inhoud kan niet leeg zijn" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Misvormde JSON input" @@ -5343,7 +5569,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5351,19 +5577,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Kan cruciale lading niet verwerken" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Fout: channels_map_to_topics parameter anders dan 0 of 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Bericht van Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5380,47 +5607,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Moet worden gevalideerd met een geldige Zulip-server-API-sleutel" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Ongeldig tokentype" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Ongeldig OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/nl/translations.json b/locale/nl/translations.json index 1cb80072c3..2f3cbb9d00 100644 --- a/locale/nl/translations.json +++ b/locale/nl/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(verborgen)", "(no description)": "(geen beschrijving)", "(no topic)": "(geen onderwerp)", + "(or )": "", "(you)": "(jij)", "({message_retention_days} days)": "({message_retention_days} dagen)", "/dark (Switch to the dark theme)": "/dark (Schakel naar donkere modus)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} is niet geabonneerd op dit kanaal. Hij/zij wordt niet geïnformeerd als je hen aanmeldt.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} heeft{number_of_invites_by_user} verlopen uitnodigingen.", "Subscribe": "Aboneer", - "Click here to learn about exporting private streams and messages.": "Klik hier om te lezen over exporteren van privékanalen en berichten.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Upgrade voor meer ruimte.", " to add a new line": " om een nieuwe regel toe te voegen", " to send": " om te verzenden", @@ -82,15 +83,18 @@ "Add alert word": "Voeg een waarschuwingswoord toe", "Add all users": "Alle gebruikers toevoegen", "Add another user...": "Voeg een gebruiker toe", + "Add audio call": "", "Add code playground": "Toevoegen code-zandbak", + "Add default streams": "", + "Add email": "", "Add emoji": "Toevoegen emoji", "Add emoji reaction": "Voeg een emoji reactie toe", "Add extra emoji for members of the {realm_name} organization.": "Extra emoji toevoegen voor leden van de {realm_name} organisatie.", "Add global time": "Globale tijd toevoegen", "Add linkifier": "Toevoegen linkifier", "Add members": "Leden toevoegen", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Toevoegen lid…", - "Add new default stream": "Voeg nieuw standaardkanaal in", "Add new user group": "Nieuwe gebruikersgroep toevoegen", "Add one or more users": "Gebruikers toevoegen", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Abonnees toevoegen. Gebruik gebruikersgroep of #kanaalnaam om in bulk abonnees toe te voegen.", "Add task": "Toevoegen taak", "Add video call": "Videogesprek toevoegen", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Succesvol toegevoegd!", "Added successfully.": "Succesvol toegevoegd!", "Administrator": "Beheerder", @@ -124,6 +129,7 @@ "Alerted messages": "Berichten met waarschuwing", "All": "Alle", "All direct messages": "", + "All groups": "", "All messages": "Alle berichten", "All messages including muted streams": "Alle berichten, inclusief gedempte kanalen", "All streams": "Alle kanalen", @@ -136,9 +142,11 @@ "Allow subdomains": "Toestaan subdomeinen", "Allowed domains": "Toegestane domeinen", "Allowed domains: {domains}": "Toegestane domeinen: {domains}", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "Al geabonneerd op {stream}", "Already subscribed users:": "Al geabonneerder gebruikers:", + "Already subscribed.": "", "Always": "Altijd", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "Een uur geleden", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Kanaal archief", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Avatar van Gravatar", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Facturering", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Bottype", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "Door deactivering van je account word je automatisch direct uitgelogd.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Sluiten", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Stel hier je bericht op", "Compose your message here...": "Stel hier je bericht op...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "Cookie Bot", "Copied!": "Gekopieerd!", + "Copy URL": "", "Copy address": "", "Copy and close": "Kopiëren en afsluiten", "Copy code": "Kopiëren code", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Maatwerk", + "Custom URL": "", "Custom emoji": "Aangepaste emoji", "Custom language: {query}": "Maatwerktaal: {query}", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Gedeactiveerd", "Deactivated users": "Gedeactiveerde gebruikers", "December": "December", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Standaard is {language}. gebruik 'tekst' om markering uit te schakelen.", "Default language for code blocks": "", "Default streams": "Standaardkanalen", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Standaard gebruikersinstellingen", "Default view": "Standaardweergave", @@ -314,12 +334,14 @@ "Delete": "Verwijderen", "Delete alert word": "Standaard waarschuwingswoord", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Verwijder concept", "Delete file": "Verwijder bestand", "Delete file?": "", + "Delete group": "", "Delete icon": "Verwijderen pictogram", "Delete linkifier?": "", "Delete logo": "Verwijderen logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Afhankelijk van de grootte van je organisatie kan een export van seconden tot een uur duren.", "Deprecation notice": "Verouderd", "Description": "Beschrijving", + "Deselect draft": "", "Desktop": "Desktop", "Desktop & mobile apps": "Desktop & mobiele apps", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Uitgeschakeld", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Weergave-instellingen", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domein", "Don’t allow disposable email addresses": "", "Download": "Downloaden", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Bericht bewerken", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Ontwerp bewerken", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Bewerk je laatste bericht", "Edit your profile": "Bewerk je profiel", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Bewerkt ({last_edit_timestr})", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "Externe link", "Failed": "Mislukt", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "Kon geen voorbeeld opmaken", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "Filteren exports", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "Filteren linkifiers", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filter kanalen", "Filter subscribers": "", "Filter topics": "Filteren onderwerpen", @@ -500,6 +523,9 @@ "First message": "Eerste bericht", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY attribution", "GIPHY integration": "GIPHY integratie", "General": "Algemeen", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Genereren uitnodigingslink", "Generate new API key": "Genereren nieuw API key", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "Hint", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Mensen", "Idle": "Wacht", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Afbeelding", "In a meeting": "", "Inactive": "", "Inactive bots": "Inactieve bots", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Zoekopdracht starten", "Insert new line": "Nieuwe regel invoegen", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integratie", "Interface": "Interface", "Invalid URL": "Ongeldige URL", @@ -581,6 +614,8 @@ "Inviting...": "Aan het uitnodigen...", "Italic": "", "January": "Januari", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "Laatste bericht", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Uitloggen", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Kanalen beheren", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Vermeldingen", - "Menu": "Menu", "Menus": "Menu's", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Mobiel", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Kanaal stilzetten", "Mute this user": "", "Mute topic": "Onderwerp stilzetten", @@ -734,38 +773,42 @@ "New password is too weak": "Nieuw wachtwoord is te zwak", "New stream announcements": "", "New stream message": "Nieuw kanaalbericht", + "New stream notifications": "", "New task": "Nieuwe taak", "New topic": "Nieuw onderwerp", "New user announcements": "", + "New user notifications": "", "Next message": "Volgende bericht", "Next unread direct message": "", "Next unread topic": "Volgende ongelezen bericht", - "Next week": "Volgende week", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "Geen beschrijving.", + "No drafts selected": "", "No drafts.": "Geen concepten.", "No exports.": "Geen exports.", "No invites match your current filter.": "", "No language set": "Geen taal ingesteld", "No linkifiers set.": "Geen linkifiers ingesteld.", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "Geen eigenaar", "No playgrounds configured.": "", "No restrictions": "No beperkingen", "No scheduled messages.": "", - "No search results": "Geen zoekresultaten", "No search results.": "", "No stream subscriptions.": "", "No streams": "Geen kanalen", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Nee, ik kijk later wel.", "Nobody": "Niemand", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "November", + "Numbered list": "", "October": "Oktober", "Old password": "Oud wachtwoord", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Open", "Open message menu": "Berichtmenu openen", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "Vorige bericht", "Privacy": "Privacy", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "Profiel", @@ -883,6 +930,7 @@ "Reactivate bot": "Heractiveren bot", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Opslaan als concept", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Bekijk e-mailconfiguratie", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Versturen", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Toon/wijzig je API key", "Sign up": "Aanmelden", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Markering", "Star selected message": "Bericht ster geven", @@ -1024,8 +1080,10 @@ "Subscribe": "Abonneren", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Inschrijven/Opzeggen bij geselecteerd kanaal", + "Subscribe {full_name} to streams": "", "Subscribed": "Geabonneerd", "Subscribed streams": "Geabonneerd op kanalen", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Tijdzone", "Time's up!": "Tijd voorbij!", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Vandaag", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Optiemenu wisselen", "Toggle topic mute": "Berichtdemping wisselen", - "Tomorrow": "Morgen", "Tomorrow at {time}": "", "Topic": "Onderwerp", "Topic muted": "Gedempt onderwerp", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Twe-factor authenticatie", "Type": "Type", + "URL": "", + "URL for your integration": "", "URL pattern": "URL patroon", - "URL prefix": "URL prefix", "URL template": "", "USERS": "GEBRUIKERS", "Uncheck all": "Alles uitkruisen", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Onderwerp aanzetten", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "Ongelezen", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Ontwerpen zien", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "Woensdag", "Week of {date}": "Week van {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Jij en", "You and {display_reply_to}": "Jij en {display_reply_to}", "You and {recipients}": "Jij en {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Je bent niet geabonneerd op dit kanaal en niemand heeft er nog over gesproken!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Je krijgt", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Je bent nog niet vermeld!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Je moet Zephyr mirroring draaien om berichten te versturen!", "You searched for:": "", "You subscribed to stream ": "", "You type": "Je typt", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "Jouw API key:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip gebruikt email om de e-mailadressen van gebruikers te controleren en notificaties te sturen", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "[Uitschakelen]", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "over 1 uur", - "in 20 minutes": "over 20 minuten", - "in 3 hours": "over 3 uur", "invisible mode off": "", "leafy green vegetable": "", "marketing": "marketing", "more conversations": "meer discussies", "more topics": "meer onderwerpen", - "or": "of", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} dagen geleden", "{full_name} is typing…": "{full_name} is aan het typen…", "{hours} hours ago": "{hours} uur geleden", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "{minutes} minuten geleden", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [zei]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reageerde met {emoji_name}" diff --git a/locale/no/LC_MESSAGES/django.po b/locale/no/LC_MESSAGES/django.po index a1a7336650..31e76ef185 100644 --- a/locale/no/LC_MESSAGES/django.po +++ b/locale/no/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,46 +17,46 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -113,32 +113,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -258,7 +258,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -568,9 +568,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -588,9 +588,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -600,9 +600,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -911,7 +911,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -940,7 +940,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1171,8 +1170,160 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1180,7 +1331,39 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1190,647 +1373,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1858,15 +1434,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1881,6 +1452,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1894,6 +1470,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1912,6 +1500,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1919,6 +1517,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1930,204 +1540,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2137,6 +1552,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2154,6 +1574,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2161,6 +1586,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2185,14 +1624,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2211,6 +1650,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2228,6 +1679,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2235,6 +1693,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2329,6 +1795,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2342,6 +1826,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2350,6 +1879,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2412,6 +1955,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2440,6 +1991,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2448,6 +2087,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2464,6 +2126,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2739,7 +2459,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3248,16 +2968,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3266,7 +2986,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3323,27 +3043,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3383,72 +3103,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3467,74 +3181,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3567,32 +3289,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3602,38 +3324,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3653,7 +3375,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3674,12 +3396,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3710,90 +3433,94 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3864,31 +3591,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3968,131 +3695,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4137,7 +3863,7 @@ msgid "Settings" msgstr "" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4150,92 +3876,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4429,67 +4155,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4513,8 +4226,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4527,101 +4240,188 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, python-brace-format msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, python-brace-format msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4644,498 +4444,452 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5228,57 +4982,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5296,19 +5078,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5324,25 +5106,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, python-brace-format msgid "Invalid status: {status}" msgstr "" @@ -5365,26 +5147,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5413,33 +5195,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5447,7 +5229,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5467,88 +5249,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5594,87 +5367,87 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5755,27 +5528,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5799,24 +5572,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5835,7 +5608,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5843,20 +5616,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5891,20 +5664,20 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, python-brace-format msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5916,10 +5689,10 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/no/translations.json b/locale/no/translations.json index cf7a137839..2978d80ec1 100644 --- a/locale/no/translations.json +++ b/locale/no/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", "Add default streams": "", + "Add email": "", "Add emoji": "Legg til emoji", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", "Add new user group": "", "Add one or more users": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Legg til oppgave", "Add video call": "Legg til videosamtale", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "Administrator", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "Tillat underdomener", "Allowed domains": "Tillatte domener", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Alltid", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "Én time siden", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "Close", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "Delete", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,7 +523,7 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "", @@ -876,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1032,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/pl/LC_MESSAGES/django.po b/locale/pl/LC_MESSAGES/django.po index 888a949911..4b1ed74392 100644 --- a/locale/pl/LC_MESSAGES/django.po +++ b/locale/pl/LC_MESSAGES/django.po @@ -18,7 +18,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Mateusz Galazka , 2021\n" "Language-Team: Polish (http://app.transifex.com/zulip/zulip/language/pl/)\n" @@ -28,46 +28,47 @@ msgstr "" "Language: pl\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Brak dostępu dla gości" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Nieprawidłowa organizacja" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Publiczne kanały" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Prywatne kanały" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Dane analityczne niedostępne. Skontaktuj się z administratorem serwera." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Nieprawidłowe parametry" @@ -128,29 +129,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Powinieneś ująć w fakturze co najmniej {} użytkowników." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Faktury z ilością licencji większą niż {} nie mogą być procedowane przez tą stronę. Aby zakończyć upgrade skontaktuj się z {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Coś poszło nie tak. Proszę skontaktuj się z {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Coś poszło nie tak. Spróbuj odświeżyć stronę." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Coś poszło nie tak. Poczekaj kilka sekund i spróbuj ponownie." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -182,7 +185,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -198,14 +201,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -217,7 +220,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -267,7 +270,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Wewnętrzny błąd serwera" @@ -569,9 +572,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -589,9 +592,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -601,9 +604,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -866,51 +869,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Zarejestruj się przy pomocy %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Dziękujemy za rejestrację!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Email nie doszedł? Możemy go wysłać ponownie." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Na wszelki wypadek sprawdź folder ze spamem." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Spróbuj teraz." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Wiadomości" @@ -1158,6 +1161,159 @@ msgstr "Zwykli użytkownicy" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Witaj w Zulipie!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1165,6 +1321,39 @@ msgstr "" msgid "Hi," msgstr "Cześć, " +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1178,22 +1367,9 @@ msgstr "Otrzymaliśmy żądanie zmiany adresu email dla konta Zulip %(realm_uri) msgid "Confirm email change" msgstr "Potwierdź zmianę adresu email" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Zweryfikuj swój nowy adres email" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1248,17 +1424,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1363,225 +1528,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Witaj w Zulipie!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Przykłady krótkich tematów" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Idź do Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1666,14 +1612,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1705,21 +1651,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1727,21 +1697,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1784,29 +1754,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1969,6 +1939,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1997,6 +1975,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Przykłady krótkich tematów" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Idź do Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2385,7 +2435,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interaktywne boty" @@ -2885,292 +2935,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Brak pola id {id}." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Twoje konto jest zbyt nowe aby wysyłać zaproszenia. Zapytaj administratora organizacji lub innego uzytkownika." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Niektórych emaili nie udało się potwierdzić, więc nie wysłano żadnych zaproszeń." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Nie mogliśmy nikogo zaprosić." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Niektóre z tych adresów są już zarejestrowane w Zulipie, więc nie wysłaliśmy im zaproszeń. Wszystkie inne dostały zaproszenie!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nie ma czego zmienić" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Twoja organizacja wyłączyła możliwość edycji wiadomości." -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Nie masz pozwolenia na edycję tej wiadomości" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Nieprawidłowa wiadomość" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Nie można pokazać wiadomości" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Ta reakcja już istnieje." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Istnieje już niestandardowa emoji o tej nazwie." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3184,8 +3237,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3204,18 +3257,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3224,38 +3291,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Brak opisu." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3265,56 +3332,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Konto nie jest powiązane z tą subdomeną" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Musisz być administratorem serwera" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Niewystarczające pozwolenie" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Nieprawidłowy nagłówek autoryzacji dla basic auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Boty typu webhook mają dostęp tyko do webhooków" @@ -3329,94 +3399,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomena musi mieć 3 lub więcej znaków." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomena nie może zaczynać się ani kończyć znakiem \"-\"." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomena może składać się tylko z małych liter, cyfr i znaków \"-\"." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomena nie jest dostępna. Wybierz inną." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Użyj swojego prawdziwego adresu email." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Organizacja, do której próbujesz dołączyć email'em {email}, nie istnieje." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Poproś administratora organizacji o zaproszenie na email {email}." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Domena twojego adresu email {email}, jest na liście zakazanych dla tej organizacji." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nowe hasło" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Wporowadź maks. 10 adresów email." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3481,31 +3557,31 @@ msgstr "Subdomena nie może zaczynać się ani kończyć znakiem \"-\"." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domena może składać się tylko z małych liter, cyfr i znaków \"-\"." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3538,166 +3614,166 @@ msgstr "Posiada już konto." msgid "Account has been deactivated." msgstr "Konto zostało zdezaktywowane." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Nieprawidłowa niestandardowa emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nieprawidłowa nazwa niestandardowej emoji." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Ta niestandardowa emoji została zdezaktywowana." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Nieprawidłowy kod emoji." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nie poprawna nazwa emoji" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Nieprawidłowy rodzaj emoji." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Musisz być administratorem organizacji lub twórcom emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Nie można stworzyć kolejki zdarzeń" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Nie jesteś zalogowany: wymagane uwierzytelnienie API lub sesja użytkownika" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Kanał '{stream}' nie istnieje" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "właściciel organizacji" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "użytkownik" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Nieprawidłowy JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Musisz być administratorem organizacji" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Konto jest zdezaktywowane" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Ta organizacja została zdezaktywowana." -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Nieprawidłowy klucz API" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Nieprawidłowa subdomena" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Odmowa dostępu" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3705,6 +3781,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Ta reakcja już istnieje." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reakcja nie istnieje." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3746,7 +3830,7 @@ msgid "Settings" msgstr "Ustawienia" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3759,264 +3843,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Obsługa klienta" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Komunikacja" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finanse" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Różne" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Zarządzanie projektami" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produktywność" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Kontrola wersji" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Wiadomość musi mieć treść" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Wiadomość nie może być pusta" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Cześć, witaj w Zulipie!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4031,669 +4123,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token nie istnieje" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Użytkownik nie jest uprawniony do tego zapytania." -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Tylko administratorzy organizacji mogą wysyłać wiadomości do tego kanału." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Dane subskrybenta są niedostępnę w tym kanale." -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Przesłane dane przekraczają limit twojej organizacji." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Rozmiar obrazu przekracza limit," -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Nieprawidłowa grupa" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nazwa jest zbyt długa!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nazwa jest zbyt krótka!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Nieprawidłowe znaki w nazwie!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Nieprawidłowy format!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Nazwa użytkownika jest już używana!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Niewłaściwa nazwa lub nazwa użytkownika" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Nieprawidłowa konfiguracja!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Nieprawidłowy rodzaj bota" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Nieprawidłowy interfejs" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Nie ma takiego bota" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Nie ma takiego użytkownika" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Użytkownik jest zdezaktywowany" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "wydarzenia na kanale" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Nieprawidłowe znaki w nazwie emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Tylko administratorzy" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nikt" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrator organizacji" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Członek" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Gość" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Publiczny" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Prywatny, otwarta historia" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Prywatny, zamknięta historia" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Wszyscy uczestnicy kanału mogą wysyłać wiadomości" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Spersonalizowane emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista opcji" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Krótki tekst" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Długi tekst" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Nieznany adres IP" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "nieznany system operacyjny" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Nieznana przeglądarka" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Brak argumentu 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Brak argumentu 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4761,66 +4942,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Określ przynajmniej jeden adres email." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Nie ma takiego zaproszenia" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Historia edycji wiadomości jest wyłączona w tej organizacji" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Nie masz uprawnień by usunąć tą wiadomość" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Wiadomość została już usunięta" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4828,22 +5042,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Brak nadawcy" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "nieprawdłowa wiadomość-mirror" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4859,26 +5074,27 @@ msgstr "Użytkownik jest już wyciszony" msgid "User is not muted" msgstr "Użytkownik nie jest wyciszony" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4895,37 +5111,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reakcja nie istnieje." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Należy włączyć przynajmniej jedną metodę uwierzytelniania." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Nieprawidłowa domena: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4937,42 +5153,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Musisz przesłać dokładnie jeden plik." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4980,7 +5197,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Prześlij dokładnie jedną ikonę." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4988,107 +5205,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "Musisz przesłać dokładnie jedno logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Kanał już ma tę nazwę!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Brak polecenia. Określ przynajmniej jedno \"dodaj\" lub \"skasuj\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Możesz zaprosić tylko innych użytkowników Zephyr do kanałów prywatnych." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "nowe kanały" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Nie jesteś uprawniony do przeglądania tego pliku.

" @@ -5104,97 +5314,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Nie znaleziono pliku.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Nieprawidłowa nazwa pliku" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Określ plik do przesłania" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Możesz przesyłać tylko pojedyncze pliki" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nie podano nowych danych" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Zmiany adresu email są wyłączone w tej organizacji." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Niewłaściwe hasło!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Prześlij dokładnie jeden awatar." @@ -5241,6 +5462,10 @@ msgstr "" msgid "Username already in use" msgstr "Nazwa użytkownika już jest używana" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5251,7 +5476,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5270,27 +5496,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5310,28 +5536,28 @@ msgstr "Niewłaściwy cache Kerberos" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Nieznany webhook request" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Należy określić wątek" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Treść nie może być pusta" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Zła forma: JSON input" @@ -5350,7 +5576,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5358,19 +5584,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Nie można obsłużyć: Pivotal payload" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Błąd: parametr channels_map_to_topics inny od 0 lub 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Wiadomość ze Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5387,47 +5614,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Należy zweryfikować poprawnym kluczem API serwera Zulp" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Nieprawidłowy rodzaj tokenu." -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Nieprawidłowy OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/pl/translations.json b/locale/pl/translations.json index 1191628aa8..f6c668b3f6 100644 --- a/locale/pl/translations.json +++ b/locale/pl/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "(brak opisu)", "(no topic)": "(brak wątku)", + "(or )": "", "(you)": "(ty)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Dodaj alert", "Add all users": "", "Add another user...": "Dodaj innego użytkownika...", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Dodaj emoji", "Add emoji reaction": "Dodaj reakcję emoji", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Dodaj nowy kanał domyślny", "Add new user group": "", "Add one or more users": "Dodaj jednego lub więcej użytkowników", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Dodaj zadanie", "Add video call": "Dodaj połączenie wideo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Dodano pomyślnie!", "Added successfully.": "", "Administrator": "Administrator", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Wszystko", "All direct messages": "", + "All groups": "", "All messages": "Wszystkie wiadomości", "All messages including muted streams": "Wszystkie wiadomości włącznie z wyciszonymi kanałami", "All streams": "Wszystkie kanały", @@ -136,9 +142,11 @@ "Allow subdomains": "Zezwalaj na subdomeny", "Allowed domains": "Dozwolone domeny", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Zawsze", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "Godzinę temu", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Awatar z Gravatar", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Rozliczenie", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Rodzaj bota", "Bots": "Boty", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "Po dezaktywacji konta zostaniesz natychmiast wylogowany.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Zamknij", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "Wykonane", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Napisz swoją wiadomość tutaj", "Compose your message here...": "Tu napisz wiadomość...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Konwertuj emotikony przed wysłaniem (:) zmieni się w 😃)", "Cookie Bot": "", "Copied!": "Skopiowano!", + "Copy URL": "", "Copy address": "", "Copy and close": "Skopiuj i zamknij", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Spersonalizowany", + "Custom URL": "", "Custom emoji": "Spersonalizowane emoji", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Dezaktywowano", "Deactivated users": "Dezaktywowani użytkownicy", "December": "Grudzień", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Domyślne kanały", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Domyślne ustawienia użytkownika", "Default view": "Pokaż na starcie", @@ -314,12 +334,14 @@ "Delete": "Skasuj", "Delete alert word": "Usuń słowo ostrzegawcze", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Usuń wersję roboczą", "Delete file": "Usuń plik", "Delete file?": "", + "Delete group": "", "Delete icon": "Usuń ikonę", "Delete linkifier?": "", "Delete logo": "Usuń logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "Wiadomość o wycofaniu", "Description": "Opis", + "Deselect draft": "", "Desktop": "Pulpit", "Desktop & mobile apps": "Aplikacje komputerowe i mobilne", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Wyłączony", "Discard": "Odrzuć", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Ustawienia widoku", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domena", "Don’t allow disposable email addresses": "", "Download": "Pobierz", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Edytuj wiadomość", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Edytuj zaznaczone kopię roboczą", "Edit selected message or view source": "", "Edit status": "Edytuj status", @@ -398,7 +423,6 @@ "Edit your last message": "Edytuj ostatnią wiadomość", "Edit your profile": "Edytuj swój profil", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "Link zewnętrzny", "Failed": "Błąd", + "Failed adding one or more streams.": "", "Failed to create video call.": "Nie udało się utworzyć połączenia wideo.", "Failed to generate preview": "Błąd podglądu", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "Filtruj zaproszenia", - "Filter languages": "Filtruj języki", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filtruj kanały", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Pierwsza wiadomość", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "Ogólne", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Wygeneruj link do zaproszenia", "Generate new API key": "Generuj nowy klucz API", @@ -542,14 +569,18 @@ "High contrast mode": "Tryb dużego kontrastu", "Hint": "Wskazówka", "Hint (up to 80 characters)": "Wskazówka (do 80-ciu znaków)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Ludzie", "Idle": "Bezczynny", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Obraz", "In a meeting": "", "Inactive": "", "Inactive bots": "Nieaktywne boty", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Rozpocznij wyszukiwanie", "Insert new line": "Wstaw nową linię", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integracje", "Interface": "Interfejs", "Invalid URL": "Nieprawidłowy URL", @@ -581,6 +614,8 @@ "Inviting...": "Zapraszanie...", "Italic": "", "January": "Styczeń", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Dołączył", @@ -599,8 +634,10 @@ "Last 30 days": "Ostatnie 30 dni", "Last 6 months": "Ostatnie 6 miesięcy", "Last active": "Ostatnio aktywny", + "Last edited {last_edit_timestr}": "", "Last message": "Ostatnia wiadomość", "Last modified": "Ostatnio zmodyfikowany", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Wyloguj się", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Zarządzaj kanałami", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Wspomniany w", "Mentions": "Oznaczenia", - "Menu": "Menu", "Menus": "Menu", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Mobilne", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Przenieś wątek", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Wycisz kanał", "Mute this user": "", "Mute topic": "Wycisz wątek", @@ -734,38 +773,42 @@ "New password is too weak": "Nowe hasło jest zbyt słabe", "New stream announcements": "", "New stream message": "Nowa wiadomość na kanale", + "New stream notifications": "", "New task": "Nowe zadanie", "New topic": "Nowy wątek", "New user announcements": "", + "New user notifications": "", "Next message": "Następna wiadomość", "Next unread direct message": "", "Next unread topic": "Następny nieprzeczytany wątek", - "Next week": "Przyszły tydzień", "No bots match your current filter.": "Brak botów pasujących do zdefiniowanego filtra", + "No conversations match your filters.": "", "No custom emoji.": "Brak spersonalizowanych emoji.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "Brak opisu.", + "No drafts selected": "", "No drafts.": "Brak kopi roboczych.", "No exports.": "", "No invites match your current filter.": "Brak zaproszeń pasujących do zdefinowanego filtra.", "No language set": "Nie ustawiono języka", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "Brak właściciela", "No playgrounds configured.": "", "No restrictions": "Brak ograniczeń", "No scheduled messages.": "", - "No search results": "Brak wyników wyszukiwania", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "Brak wątków pasujących do zdefiniowanego filtra.", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "Brak użytkowników pasujących do zdefiniowanego filtra.", + "No users to add.": "", "No, I'll catch up.": "Nie, przeczytam kiedy indziej.", "Nobody": "Nikt", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Listopad", + "Numbered list": "", "October": "Październik", "Old password": "Stare hasło", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Otwórz", "Open message menu": "Otwórz menu wiadomości", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Naciśnij > w celu wyświetlenia listy wątków", "Prevent users from changing their avatar": "Uniemożliwiaj użytkownikom zmianę ich awatarów", "Prevent users from changing their email address": "Uniemożliwiaj użytkownikom zmianę ich adresów email", @@ -869,6 +915,7 @@ "Previous message": "Poprzednia wiadomość", "Privacy": "Prywatność", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Prywatny, zamknięta historia", "Private, shared history": "Prywatny, otwarta historia", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Aktywuj ponownie bota", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Zapisz jako szkic", "Saved. Please reload for the change to take effect.": "", "Saving": "Zapisywanie", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Zobacz jak należy skonfigurować email.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "Wybierz datę i czas", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Wyślij", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Pokaż podgląd przesłanych i podlinkowanych obrazów", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Pokaż/zmień klucz API", "Sign up": "Zarejestruj", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Sortuj według tygodniowej aktywności", "Sort by name": "Sortuj według nazwy kanału", "Sort by number of subscribers": "Sortuj według liczby subskrybentów", + "Sort by unread message count": "", "Spoiler": "Spoiler\n", "Star": "Oznacz", "Star selected message": "Wiadomości oznaczone gwiazdką", @@ -1024,8 +1080,10 @@ "Subscribe": "Subskrybuj", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Subskrybuj/odsubskrybuj wybrane kanały.", + "Subscribe {full_name} to streams": "", "Subscribed": "Subskrybujesz", "Subscribed streams": "Subskrybowane kanały", + "Subscribed successfully!": "Pomyślnie zasubskrybowano!", "Subscriber count": "Liczba subskrybentów", "Subscribers": "Subskrybenci", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Strefa czasowa", "Time's up!": "Czas upłynął!", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Dzisiaj", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Przełącz subskrypcje", "Toggle the gear menu": "Włącz/wyłącz menu ustawień", "Toggle topic mute": "Włącz/wyłącz wyciszenie wątku", - "Tomorrow": "Jutro", "Tomorrow at {time}": "", "Topic": "Wątek", "Topic muted": "Wyciszone wątki", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Dwuskładnikowa autentykacja", "Type": "Rodzaj", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "UŻYTKOWNICY", "Uncheck all": "Odznacz wszystko", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Przywróć powiadomienia w wątku", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Odepnij kanał od góry", "Unread": "Nieprzeczytane ", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Zobacz kopie robocze", - "View edit history": "Zobacz historię edycji", + "View edit and move history": "", "View file": "Zobacz plik", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "Środa", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Kto może uzyskać dostęp do kanału?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Kto może tworzyć i zarządzać grupami użytkowników", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Kto może publikować wiadomości na kanale?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Ty i", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Nie jesteś subskrybentem tego kanału", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Nie subskrybujesz tego kanału i nikt o tym jeszcze nie rozmawiał!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Widzisz", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "Nie posiadasz żadnych aktywnych botów", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Nie wysłano żadnych plików.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Nikt Cię nie @-tagował!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Musisz mieć mirroring Zephyr aby wysyłać wiadomości!", "You searched for:": "", "You subscribed to stream ": "", "You type": "Piszesz", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "Twój klucz API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip wyśle email aby potwierdzić adresy email użytkowników i wyśle powiadomienia.", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[Konfiguruj]", - "[Disable]": "[Wyłącz]", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "[Nieustawione]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "w ciągu godziny", - "in 20 minutes": "w ciągu 20-tu minut", - "in 3 hours": "w ciągu trzech godzin", "invisible mode off": "", "leafy green vegetable": "", "marketing": "marketing", "more conversations": "więcej rozmów", "more topics": "więcej wątków", - "or": "lub", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} few {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} few {} many {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/pt/LC_MESSAGES/django.po b/locale/pt/LC_MESSAGES/django.po index e57a64390b..04788998b1 100644 --- a/locale/pt/LC_MESSAGES/django.po +++ b/locale/pt/LC_MESSAGES/django.po @@ -15,7 +15,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Andrei Bernardo Simoni , 2021\n" "Language-Team: Portuguese (http://app.transifex.com/zulip/zulip/language/pt/)\n" @@ -25,46 +25,47 @@ msgstr "" "Language: pt\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Não permitido para usuários convidados" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organização inválida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Fluxos públicos" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Fluxos privados" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Data de início é depois da data de fim. Início: {start}, Fim: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Nenhuma dado analítico disponível. Por favor contate o administrador do servidor" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parâmetros inválidos" @@ -125,29 +126,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Você deve faturar pelo menos {} usuários." - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Erro inesperado. Por favor contacte {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Algo deu errado. Por favor, recarregue a página." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Algo deu errado. Por favor, aguarde alguns segundos e tente novamente." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -179,7 +182,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -195,14 +198,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -214,7 +217,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Deve ser um administrador de faturamento ou proprietário da organização" @@ -264,7 +267,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Erro interno do servidor" @@ -566,9 +569,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -586,9 +589,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -598,9 +601,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -863,51 +866,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Inscrever-se com %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Obrigado por inscrever-se!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Nenhum e-mail ainda? Nós podemos reenvia-lo." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Só por garantia, dê uma olhada na sua pasta de Spam." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Atualizações podem atrasar." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Tente agora." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Mensagens" @@ -1155,6 +1158,159 @@ msgstr "Usuários padrão" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Bem-vindo ao Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL da organização: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Usar sua conta LDAP entrar" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s no Zulip: Detalhes da sua nova organização" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s no Zulip: Detalhes de sua nova conta" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Você ingressou na organização Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1162,6 +1318,39 @@ msgstr "" msgid "Hi," msgstr "Oi," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Se você não requisitou esta modificação. por favor contacte-nos imediatamente em <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1175,23 +1364,10 @@ msgstr "Nós recebemos uma solicitação para alterar o endereço de e-mail para msgid "Confirm email change" msgstr "Confirmar alteração de e-mail" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verifique seu novo endereço de e-mail" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Se você não requisitou esta modificação. por favor contacte-nos imediatamente em <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1245,17 +1421,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1360,225 +1525,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Bem-vindo ao Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL da organização: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Usar sua conta LDAP entrar" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s no Zulip: Detalhes da sua nova organização" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s no Zulip: Detalhes de sua nova conta" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Você ingressou na organização Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Exemplos de tópicos curtos" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Vá para Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1663,14 +1609,14 @@ msgstr "Este convite expira em dois dias. Se o convite expirar, você precisará #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1702,21 +1648,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1724,21 +1694,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1781,29 +1751,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nNão responda esse e-mail. Este servidor Zulip não esta configurado\npara receber e-mails. Ajuda:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Gerenciar preferências de e-mail:" @@ -1966,6 +1936,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1994,6 +1972,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Exemplos de tópicos curtos" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Vá para Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2382,7 +2432,7 @@ msgid "Incoming webhooks" msgstr "Webhooks de entrada" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Bots interativos" @@ -2882,292 +2932,295 @@ msgid "" " " msgstr "\n Você pode usar também o Zulip desktop app.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} aceitou seu convite para participar do Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Mapeamento de pedidos inválido." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Campo id {id} não encontrado." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Sua conta é muito nova para enviar convites para esta organização. Pergunte a um administrador da organização ou a um usuário mais experiente." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Alguns e-mails não foram validados, por isso não enviamos nenhum convite." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Não fomos capazes de convidar ninguém." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Alguns desses endereços já estão usando o Zulip, então não enviamos um convite. Nós enviamos convites para todos os outros!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nada para alterar" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Sua organização desligou a edição de mensagem" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Você não tem permissão para editar esta mensagem" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "O limite de tempo para editar esta mensagem passou" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Você não tem permissão para usar menções curinga neste fluxo." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Mensagem inválida" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Não é possível processar a mensagem" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: o programador da API enviou conteúdo JSON inválido" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reação já existe." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Um emoji personalizado com este nome já existe." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3181,8 +3234,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3201,18 +3254,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3221,38 +3288,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Nenhuma descrição." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3262,56 +3329,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID de usuário inválido {}" - -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/decorator.py:250 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" + +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Esta API não está disponível para bots de webhooks de entrada." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Conta não está associada a este subdomínio" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Este ponto de acesso não aceita requisições de bot." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Deve ser um administrador do servidor" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permissão insuficiente" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Este endpoint requer autenticação HTTP básica" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Cabeçalho de autorização inválido para autenticação básica" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Cabeçalho de autorização ausente para autenticação básica" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Bots webhooks podem apenas acessar webhooks" @@ -3326,94 +3396,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomínio precisa ter comprimento 3 ou maior." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomínio não pode iniciar ou terminar com um '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomínio pode apenas ter letras minúsculas, números e '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomínio indisponível. Por favor, escolha um diferente." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Por favor, utilize seu endereço de e-mail real." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "A organização que você está tentando ingressar utilizando {email} não existe." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Por favor, solicite um convite para {email} do administrador da organização." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Seu endereço de e-mail {email} não está em um dos domínios com permissão para se inscrever em contas dessa organização." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Endereços de e-mail contendo + não são permitidos nesta organização." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nova senha" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Nova confirmação de senha" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Por favor, insira no máximo 10 e-mails." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Não conseguimos encontrar essa organização Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3478,31 +3554,31 @@ msgstr "Subdomínios não podem iniciar ou terminar com um '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domínio pode apenas ter letras, números, '.' e '-'s." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "O tópico não deve conter bytes nulos" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "O usuário desabilitou a sincronização de rascunhos." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Rascunho não existe" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3535,166 +3611,166 @@ msgstr "Já tem uma conta." msgid "Account has been deactivated." msgstr "A conta foi desativada." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personalizado inválido." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nome de emoji personalizado inválido." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Este emoji personalizado foi desativado." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Código de emoji inválido." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nome do emoji inválido" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Tipo de emoji inválido." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Deve ser um administrador da organização ou autor do emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Não foi possível alocar a fila de eventos" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Não entrou: autenticação da API ou sessão de usuário requerida" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Fluxo '{stream}' não existe" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Fluxo com ID '{stream_id}' não existe" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "usuário" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Não é possível desativar a única {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Uso de API excedeu a taxa limite" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON mal formado" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Deve ser um membro da organização" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Deve ser um administrador da organização" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Deve ser o proprietário de uma organização" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Conta está desativada" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Esta organização foi desativada" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Chave API inválida" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "O evento '{event_type}' não é compatível atualmente com o webhook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Subdomínio inválido" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Acesso negado" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3702,6 +3778,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reação já existe." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reação não existe." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3743,8 +3827,8 @@ msgid "Settings" msgstr "Configurações" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Vá para Definições para configurar suas notificações e configurações de exibição." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3756,264 +3840,272 @@ msgid "" "and give it a go!" msgstr "Clique aqui para iniciar uma nova conversa. Escolha um tópico (2 a 3 palavras é melhor), e dê uma chance!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Estruturas de Integração" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integração contínua" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Suporte ao cliente" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Implantação" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Comunicação" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financeiro" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Diversos" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gerenciamento de projeto" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produtividade" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Controle de versão" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Mensagem não deve ser vazia" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Mensagem não deve conter bytes nulos" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operador de limite inválido: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Se você é um usuário novo do Zulip, que tal dar uma olhada no nosso [Guia de início]({getting_started_url})?" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Olá, bem-vindo ao Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Eu também posso te ajudar a ajeitar suas coisas! Apenas clique nessa mensagem ou aperte `r` para me responder." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Este é um fluxo privado, conforme indicado pelo ícone de cadeado ao lado do nome do stream." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Os fluxos privados são visíveis apenas para membros do fluxo." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4028,669 +4120,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token não existe" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} mencionou você:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} mencionou a todos:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Usuário não autorizado para esta consulta" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Não é possível decidir entre os argumentos '{var_name1}' e '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Argumento '{var_name}' ausente" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Valor incorreto para '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Segurança da conta Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Apenas administradores da organização podem enviar para este fluxo." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Novos membros não podem enviar para este fluxo." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Por favor, forneça 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Por favor, escolha um: 'stream' ou 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Dados do inscrito não está disponível para este fluxo" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Impossível recuperar inscritos para fluxo privado" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} é muito longa (limite: {max_length} caracteres)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Envio excederia a cota de envio da organização." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Não foi possível decodificar a imagem; você enviou um arquivo de imagem?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Tamanho da imagem excede limite." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grupo de usuário inválido" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nome muito longo!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nome muito curto!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Caracteres inválidos no nome!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Formato Inválido!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Nome já está em uso!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nome ou nome de usuário incorreto" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Dados de configuração inválidos" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tipo do bot inválido" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipo de interface inválido" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Bot inexistente" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Usuário não existe" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Usuário está desativado" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} não pode estar em branco." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} é muito longa (limite: {max_length} caracteres)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} tem tamanho incorreto {length}; deve ser {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' não pode estar em branco." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' não é uma opção válida para '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "O cabeçalho de evento HTTP '{header}' ausente" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Deve haver uma barra no início do comando zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caracteres inválidos no nome do emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Administradores e moderadores" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Apenas administradores" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Ninguém" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Dono da organização" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrador da organização" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membro" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Convidado" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Público" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Todos os membros do fluxo podem postar" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Apenas administradores da organização podem postar" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Apenas membros plenos da organização podem postar" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personalizado" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji extra do Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista de opções" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Selecionador de pessoa" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Texto curto" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Texto longo" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Selecionador de data" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Conta externa" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Endereço IP desconhecido" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "um sistema operacional desconhecido" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Um navegador desconhecido" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Argumento 'queue_id' ausente" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Argumento 'last_event_id' ausente" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4758,66 +4939,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend não habilitado." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Você deve especificar pelo menos um endereço de e-mail." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Fluxo não existe com o id: {}. Nenhum convite foi enviado." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Nenhum convite" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Histórico de edição de mensagem está desabilitado nesta organização" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Você não tem permissão para excluir esta mensagem" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "O limite de tempo para excluir esta mensagem passou" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Mensagem já deletada" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4825,22 +5039,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Remetente ausente" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Espelhamento não permitido com IDs de usuário do destinatário" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Mensagem espelhada inválida" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Espelhamento do Zephyr não é permitido nesta organização" @@ -4856,26 +5071,27 @@ msgstr "Usuário já está silenciado" msgid "User is not muted" msgstr "Usuário não está silenciado" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Presença não é suportado para usuários bot." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Cliente não passou nenhum novo valor." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4892,37 +5108,37 @@ msgid "" "emoji_code" msgstr "Pelo menos um dos seguintes argumentos deve estar presente: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reação não existe." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Pelo menos um método de autenticação deve estar habilitado." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Domínio inválido: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4934,42 +5150,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Você deve enviar exatamente um arquivo." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Uso da API excedeu a taxa limite" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4977,7 +5194,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Você deve enviar exatamente um ícone." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4985,107 +5202,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "Você deve enviar exatamente um logotipo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Usuário não autorizado a executar consultas em nome de '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Você deve passar \"new_description\" ou \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Valor inválido para \"op\". Especifique \"adicionar\" ou \"remover\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Fluxo já possui este nome!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nada para fazer. Especifique pelo menos \"adicionar\" ou \"excluir\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Você pode apenas convitar outros usuários do espelhamento Zephyr para fluxos privados." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Json inválido para sub-mensagem" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Você não está autorizado a visualizar este arquivo.

" @@ -5101,97 +5311,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Arquivo não encontrado.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Você deve escolher um arquivo para enviar" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Você pode enviar somente um arquivo por vez" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nenhum novo dado fornecido" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Mudanças na imagem de perfil estão desativadas nesta organização" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Alteração de endereço de email está desabilitada neste organização." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Sua senha do Zulip é gerenciada no LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Senha incorreta!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Você deve enviar apenas um avatar" @@ -5238,6 +5459,10 @@ msgstr "Nome do bot embutido inválido." msgid "Username already in use" msgstr "Nome de usuário já em uso" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5248,7 +5473,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Endereços de e-mail descartáveis não são permitidos nesta organização" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5267,27 +5493,27 @@ msgstr "Zoom: Identificador de sessão de inválido." msgid "Invalid Zoom credentials" msgstr "Zoom: Credenciais inválidas" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Zoom: Falha ao criar uma chamada" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5307,28 +5533,28 @@ msgstr "Cache Kerberos inválido" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Carga útil inválida" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Requisição webhook desconhecida" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Tópico não pode ser vazio" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Conteúdo não pode ser vazio" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Entrada JSON mal-formada" @@ -5347,7 +5573,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5355,19 +5581,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Impossível lidar com carga do Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Erro: parâmetro channels_map_to_topics diferente de 0 ou 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Mensagem do Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5384,47 +5611,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Deve validar com chave API válida do servidor Zulip" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Tipo de token inválido" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Dados estão fora de ordem." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP inválido" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/pt/translations.json b/locale/pt/translations.json index 22cd412909..e1f0b86b2c 100644 --- a/locale/pt/translations.json +++ b/locale/pt/translations.json @@ -1,14 +1,15 @@ { "%'{file}' exceeds the maximum file size for attachments ({variable} MB).": "%'{file}' excede o tamanho máximo de arquivos para anexos ({variable} MB).", - "(attached file)": "", + "(attached file)": "(arquivo anexo)", "(forever)": "(pra sempre)", "(hidden)": "(escondido)", "(no description)": "(sem descrição)", "(no topic)": "(sem tópico)", + "(or )": "", "(you)": "(você)", "({message_retention_days} days)": "({message_retention_days} dias)", "/dark (Switch to the dark theme)": "/escuro (Mudar para tema escuro)", - "/light (Switch to light theme)": "", + "/light (Switch to light theme)": "/light (Mudar para tema claro)", "/me is excited (Display action text)": "/me está animado (Mostrar texto de ação)", "/poll Where should we go to lunch today? (Create a poll)": "/poll Onde vamos almoçar hoje? (Criar uma enquete)", "/todo (Create a todo list)": "/fazer (Criar lista de coisas pra fazer)", @@ -28,18 +29,18 @@ "Total messages: {total_messages}": "Mensagens totais: {total_messages} ", "

{file_name} will be removed from the messages where it was shared. This action cannot be undone.

": "

{file_name} será removido das mensagens onde foi compartilhado. Essa ação não pode ser desfeita.

", "

Stream will be announced in #{notifications_stream}.

": "

Canal será anunciado em #{notifications_stream}.

", - "

You are searching for messages that are sent by more than one person, which is not possible.

": "", + "

You are searching for messages that are sent by more than one person, which is not possible.

": "

Você está buscando por mensagens que foram enviadas por mais de uma pessoa, o que não é possível.

", "

You are searching for messages that belong to more than one stream, which is not possible.

": "

Você está procurando por mensagens que pertencem a mais de um canal, o que não é possível.

", - "

You are searching for messages that belong to more than one topic, which is not possible.

": "", + "

You are searching for messages that belong to more than one topic, which is not possible.

": "

Você está buscando por mensagens que pertencem a mais de um tópico, o que não é possível.

", "{name} is not subscribed to this stream. They will not be notified if you mention them.": "{name} não está inscrito nesse canal. Ele ou ela não será notificado se você mencioná-lo.", - "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", - "{username} has {number_of_invites_by_user} unexpired invitations.": "", + "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} não está inscrito neste fluxo. Ele não será notificado a menos que você o inscreva.", + "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} possui {number_of_invites_by_user} convites ainda não expirados.", "Subscribe": "Inscrever", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", - " to add a new line": "", - " to send": "", - " will have the same properties as it did prior to deactivation, including role, owner and stream subscriptions.": "", + " to add a new line": " para adicionar uma nova linha", + " to send": " para enviar", + " will have the same properties as it did prior to deactivation, including role, owner and stream subscriptions.": " terá as mesmas propriedades de antes de ser desativado, incluindo papéis, proprietário e inscrições de fluxos.", " will have the same role, stream subscriptions, user group memberships, and other settings and permissions as they did prior to deactivation.": "", "A Topic Move already in progress.": "", "A deactivated bot cannot send messages, access data, or take any other action.": "", @@ -47,9 +48,9 @@ "A language is marked as 100% translated only if every string in the web, desktop, and mobile apps is translated, including administrative UI and error messages.": "", "A stream needs to have a name": "Um fluxo precisa ter um nome", "A stream with this name already exists": "Um fluxo com esse nome já existe", - "A user group needs to have a name": "", - "A user group with this name already exists": "", - "A wide image (200×25 pixels) for the upper left corner of the app.": "", + "A user group needs to have a name": "Um grupo de usuários precisa ter um nome", + "A user group with this name already exists": "Já existe um grupo de usuários com este nome", + "A wide image (200×25 pixels) for the upper left corner of the app.": "Uma imagem larga (200×25 pixels) para o canto superior esquerdo da aplicação.", "API documentation": "Documentação da API", "API key": "Chave API", "About Zulip": "Sobre o Zulip", @@ -58,23 +59,23 @@ "Action": "Ação", "Actions": "Ações", "Active": "Ativo", - "Active an hour ago": "", + "Active an hour ago": "Ativo há uma hora", "Active bots": "Bots ativos", - "Active more than 2 weeks ago": "", + "Active more than 2 weeks ago": "Ativo há mais de 2 semanas", "Active now": "Ativo no momento", "Active users": "Usuários ativos", - "Active yesterday": "", - "Active {days_old} days ago": "", - "Active {hours} hours ago": "", - "Active {last_active_date}": "", - "Active {minutes} minutes ago": "", - "Activity unknown": "", + "Active yesterday": "Ativo ontem", + "Active {days_old} days ago": "Ativo há {days_old} dias", + "Active {hours} hours ago": "Ativo há {hours} horas", + "Active {last_active_date}": "Ativo em {last_active_date}", + "Active {minutes} minutes ago": "Ativo há {minutes} minutos", + "Activity unknown": "Atividade desconhecida", "Add": "Adicionar", "Add GIF": "Adicionar GIF", "Add a new alert word": "Adicionar um novo alerta de palavra", "Add a new bot": "Adicionar um novo bot", "Add a new code playground": "", - "Add a new custom profile field": "", + "Add a new custom profile field": "Adicionar um novo campo personalizado de perfil", "Add a new emoji": "Adicionar um novo emoji", "Add a new linkifier": "Adicionar um novo vínculo", "Add a new profile field": "Adicionar um novo campo de perfil", @@ -82,15 +83,18 @@ "Add alert word": "Adicionar alerta de palavra", "Add all users": "Adicionar todos usuários", "Add another user...": "Adicionar outro usuário...", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Adicionar emoji", "Add emoji reaction": "Adicionar reação de emoji", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "Adicionar vínculo", "Add members": "Adicionar membros", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Adicionar membro...", - "Add new default stream": "Adicionar novo canal padrão", "Add new user group": "Adicionar novo grupo de usuários", "Add one or more users": "Adicionar um ou mais usuários", "Add option": "Adicionar opção", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Adicionar inscritos. Use grupo de usuários ou #nomedocanal para adicionar inscritos em massa.", "Add task": "Adicionar tarefa", "Add video call": "Adicionar chamada de vídeo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Adicionado com sucesso!", "Added successfully.": "Adicionado com sucesso.", "Administrator": "Administrador", @@ -124,6 +129,7 @@ "Alerted messages": "Mensagens alertadas", "All": "Todos", "All direct messages": "", + "All groups": "", "All messages": "Todas as mensagens", "All messages including muted streams": "", "All streams": "Todos os fluxos", @@ -136,9 +142,11 @@ "Allow subdomains": "Permitir subdomínios", "Allowed domains": "Domínios permitidos", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "Já não inscrito", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Sempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Uma chave API pode ser usada para acessar programaticamente uma conta Zulip. Qualquer pessoa com acesso à sua chave de API tem a capacidade de ler suas mensagens, enviar mensagens em seu nome e se passar por você no Zulip, portanto, você deve proteger sua chave API com o mesmo cuidado que protege sua senha.
Recomendamos criar bots e usar as contas e chaves API dos bots para acessar a API do Zulip, a menos que a tarefa exija acesso à sua conta.", "An hour ago": "Uma hora atrás", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Arquivar canal", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Tem certeza que deseja desmarcar todas as mensagens com estrela? Essa ação não pode ser desfeita.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Avatar do Gravatar", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Faturamento", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Tipo do bot", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "Ver conversas recentes", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "Ocupado", "By deactivating your account, you will be logged out immediately.": "Desativando sua conta, você será desconectado imediatamente.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Fechar", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "Completo", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Componha sua mensagem aqui", "Compose your message here...": "Componha sua mensagem aqui...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Converter emoticons antes de enviar (:) torna-se 😃)", "Cookie Bot": "Bot de cookie", "Copied!": "Copiado!", + "Copy URL": "", "Copy address": "", "Copy and close": "Copiar e fechar", "Copy code": "Copiar código", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Personalizado", + "Custom URL": "", "Custom emoji": "Emoji personalizado", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Desativado", "Deactivated users": "Usuários desativados", "December": "Dezembro", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Fluxos padrão", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Configurações de usuário padrão", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Excluir", "Delete alert word": "Excluir alerta de palavra", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Excluir rascunho", "Delete file": "Excluir arquivo", "Delete file?": "", + "Delete group": "", "Delete icon": "Excluir ícone", "Delete linkifier?": "", "Delete logo": "Remover logotipo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "Aviso de depreciação", "Description": "Descrição", + "Deselect draft": "", "Desktop": "Computador de mesa", "Desktop & mobile apps": "Aplicativos móveis e para desktop", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentação detalhada de formatação de mensagens", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Desabilitado", "Discard": "Descartar", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Configurações de visualização", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domínio", "Don’t allow disposable email addresses": "Não permitir endereços de email indisponíveis", "Download": "Download", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Editar mensagem", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Editar rascunho selecionado", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Editar sua última mensagem", "Edit your profile": "Editar seu perfil", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "Link externo", "Failed": "Falha", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "Falha ao gerar visualização", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "Filtrar convites", - "Filter languages": "Filtrar idiomas", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filtrar fluxos", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Primeira mensagem", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "Geral", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Gerar link de convite", "Generate new API key": "Gerar nova chave API", @@ -542,14 +569,18 @@ "High contrast mode": "Modo de alto contraste", "Hint": "Dica", "Hint (up to 80 characters)": "Dica (até 80 caracteres)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Pessoas", "Idle": "Ocioso", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Imagem", "In a meeting": "", "Inactive": "", "Inactive bots": "Bots inativos", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Webhooks de entrada podem apenas enviar mensagens.", "Initiate a search": "Inicie uma pesquisa", "Insert new line": "Inserir nova linha", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrações", "Interface": "Interface", "Invalid URL": "URL inválido", @@ -581,6 +614,8 @@ "Inviting...": "Convidando...", "Italic": "", "January": "Janeiro", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Ingressado", @@ -599,8 +634,10 @@ "Last 30 days": "Últimos 30 dias", "Last 6 months": "Últimos 6 meses", "Last active": "Ativo pela última vez", + "Last edited {last_edit_timestr}": "", "Last message": "Última mensagem", "Last modified": "Modificado pela última vez", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Sair", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Gerenciar canais", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Mencionado em", "Mentions": "Menções", - "Menu": "Menu", "Menus": "Menus", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Celular", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Mover tópico", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Silenciar fluxo", "Mute this user": "", "Mute topic": "Silenciar assunto", @@ -734,38 +773,42 @@ "New password is too weak": "Nova senha é muito fraca", "New stream announcements": "", "New stream message": "Nova mensagem no canal", + "New stream notifications": "", "New task": "Nova tarefa", "New topic": "Novo tópico", "New user announcements": "", + "New user notifications": "", "Next message": "Próxima mensagem", "Next unread direct message": "", "Next unread topic": "Próximo tópico não lido", - "Next week": "Próxima semana", "No bots match your current filter.": "Nenhum bot corresponde ao seu filtro atual.", + "No conversations match your filters.": "", "No custom emoji.": "Sem emoji personalizado.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nenhum fluxo padrão corresponde ao seu filtro atual.", "No description.": "Nenhuma descrição.", + "No drafts selected": "", "No drafts.": "Nenhum rascunho.", "No exports.": "Sem exportações. ", "No invites match your current filter.": "Nenhum convite corresponde ao seu filtro atual.", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "Ninguém leu essa mensagem ainda.", "No owner": "Sem proprietário", "No playgrounds configured.": "", "No restrictions": "Nenhuma restrição", "No scheduled messages.": "", - "No search results": "Sem resultados de busca", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "Nenhum usuário corresponde ao seu filtro atual.", + "No users to add.": "", "No, I'll catch up.": "Não, eu vou obter.", "Nobody": "Ninguém", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "Notificar canal", "Notify this user by email?": "", "November": "Novembro", + "Numbered list": "", "October": "Outubro", "Old password": "Senha anterior", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Somente membros do fluxo podem adicionar usuários a um fluxo privado.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Abrir", "Open message menu": "Abrir menu de mensagem", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Pressione > para lista de tópicos", "Prevent users from changing their avatar": "Impedir que usuários troquem suas imagens de perfil", "Prevent users from changing their email address": "Impedir que os usuários alterem seus endereços de e-mail", @@ -869,6 +915,7 @@ "Previous message": "Mensagem anterior", "Privacy": "Privacidade", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "Perfil", @@ -883,6 +930,7 @@ "Reactivate bot": "Reativar bot", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "Confirmações de leitura", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Salvo como rascunho", "Saved. Please reload for the change to take effect.": "", "Saving": "Salvando", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Ver como configurar o e-mail.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "Selecione data e hora", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Selecionar emoji", "Select language": "Selecionar idioma", + "Select stream": "", "Send": "Enviar", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Enviar e-mails de resumo quando eu estou ausente", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Mostrar pré-visualizações de imagens enviadas e vinculadas", "Show starred message count": "Mostrar contagem de mensagens favoritadas", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Mostrar/alterar sua chave API", "Sign up": "Inscreva-se", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "Marcar", "Star selected message": "Marcar mensagem selecionada", @@ -1024,8 +1080,10 @@ "Subscribe": "Se inscrever", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Inscrever/desinscrever do fluxo selecionado", + "Subscribe {full_name} to streams": "", "Subscribed": "Inscrito", "Subscribed streams": "Fluxos inscritos", + "Subscribed successfully!": "Inscrito com sucesso!", "Subscriber count": "Contagem de inscritos", "Subscribers": "Inscritos", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Fuso horário", "Time's up!": "Acabou o tempo!", "Tip: You can also send \"/poll Some question\"": "Dica: Você pode também enviar \"/poll Alguma pergunta\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Hoje", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Alternar inscrição", "Toggle the gear menu": "Alternar o menu de engrenagem", "Toggle topic mute": "Alternar tópico para silenciado", - "Tomorrow": "Amanhã", "Tomorrow at {time}": "", "Topic": "Tópico", "Topic muted": "Tópico silenciado", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Autenticação de dois fatores", "Type": "Tipo", + "URL": "", + "URL for your integration": "", "URL pattern": "Padrão de URL", - "URL prefix": "", "URL template": "", "USERS": "USUÁRIOS", "Uncheck all": "Desmarcar tudo", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Cancelar o silenciamento do tópico", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Desfixar canal do topo", "Unread": "Não lido", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Visualizar rascunhos", - "View edit history": "Visualizar histórico de edição", + "View edit and move history": "", "View file": "Visualizar arquivo", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "Quarta", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Bem vindo de volta! Você tem mensagens não lidas{unread_msgs_count}. Você quer marcar todas como lidas?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Quem pode acessar o fluxo?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Quem pode postar no fluxo?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Você e", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Você não está inscrito neste fluxo no momento.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Você não está inscrito neste fluxo e ninguém falou sobre isso ainda!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Você não tem permissão para usar menções curinga neste fluxo.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Você recebe", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "Você não tem bots ativos.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Você não silenciou nenhum usuário ainda.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Você não enviou nenhum arquivo.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Você ainda não foi mencionado!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Você deve ser um administrador da organização para criar um fluxo sem se inscrever.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Você precisa estar executando o espelhamento do Zephyr para enviar mensagens!", "You searched for:": "Você buscou por:", "You subscribed to stream ": "", "You type": "Você digita", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Você não está inscrito neste fluxo. Você não será notificado se outros usuários responderem sua mensagem.", "Your API key:": "Sua chave API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "O Zulip precisa enviar e-mail para confirmar os endereços dos usuários e enviar notificações.", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[Configurar]", - "[Disable]": "[Desabilitar]", - "[More…]": "", "[Quoting…]": "[Citando...]", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "Em 1 hora", - "in 20 minutes": "em 20 minutos", - "in 3 hours": "em 3 horas", "invisible mode off": "", "leafy green vegetable": "vegetais verdes folhosos", "marketing": "marketing", "more conversations": "mais conversas", "more topics": "mais tópicos", - "or": "ou", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "{minutes} minutos atrás", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} many {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} hora local", "{username} [said]({link_to_message}):": "{username} [disse]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reagiu com {emoji_name}" diff --git a/locale/pt_BR/LC_MESSAGES/django.po b/locale/pt_BR/LC_MESSAGES/django.po index 02e6c18f46..852a7da757 100644 --- a/locale/pt_BR/LC_MESSAGES/django.po +++ b/locale/pt_BR/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Luiz François , 2021\n" "Language-Team: Portuguese (Brazil) (http://app.transifex.com/zulip/zulip/" @@ -21,49 +21,49 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % " "1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Não permitido para visitantes" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organização inválida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Streams públicas" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Streams particulares" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" "O tempo de início é posterior ao tempo final. Início: {start}, Fim: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" "Sem dados de analytics disponíveis. Por favor contate seu administrador do " "servidor." -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parâmetros inválidos" @@ -139,13 +139,13 @@ msgstr "" "Sua organização não tem licenças do Zulip para convidar {num_invites} " "usuários." -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, fuzzy, python-brace-format #| msgid "You must invoice for at least {} users." msgid "You must invoice for at least {min_licenses} users." msgstr "Você deve incluir na fatura ao menos {} usuários." -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, fuzzy, python-brace-format #| msgid "" #| "Invoices with more than {} licenses can't be processed from this page. To " @@ -157,21 +157,21 @@ msgstr "" "Faturas com mais de {} licenças não podem ser processadas por esta página. " "Para completar o upgrade, por favor. contate {}." -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Algo errado aconteceu. Por favor contate {email}." -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Algo errado aconteceu. Por favor, recarregue a página." -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" "Algo errado aconteceu. Por favor aguarde alguns segundos e tente de novo." -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -295,7 +295,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Erro interno do servidor" @@ -615,9 +615,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -635,9 +635,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -647,9 +647,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -964,7 +964,7 @@ msgstr "Tentando novamente em breve..." msgid "Try now." msgstr "Tentar agora." -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Mensagens" @@ -993,7 +993,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1226,8 +1225,160 @@ msgstr "Usuários normais" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1235,7 +1386,41 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +#, fuzzy +#| msgid "Confirm password" +msgid "Confirm and set password" +msgstr "Confirmar senha" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1245,652 +1430,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "Confirmar alteração de e-mail" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -msgid "New streams" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -msgid "Unsubscribe from digest emails" -msgstr "" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "Peixe nadando" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, fuzzy, python-format -#| msgid "Create a new Zulip organization" -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "Criar uma nova organização Zulip" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -#, fuzzy -#| msgid "Your account" -msgid "Your account details:" -msgstr "Sua conta" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -msgid "Team Zulip" -msgstr "Equipe Zulip" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Exemplos de tópicos curtos" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -#, fuzzy -#| msgid "Examples of short topics" -msgid "Example of a topic that is too long" -msgstr "Exemplos de tópicos curtos" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "Obrigado," - -#: templates/zerver/emails/compiled/followup_day2.html:35 -msgid "Unsubscribe from welcome emails" -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, python-format -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, python-format -msgid "Organization: %(organization_link)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Unsubscribe from login notifications" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -msgid "Reset password" -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1918,15 +1491,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1941,6 +1509,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1954,6 +1527,18 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +msgid "New streams" +msgstr "" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +msgid "Unsubscribe from digest emails" +msgstr "" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1972,6 +1557,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "Peixe nadando" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1979,6 +1574,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1990,204 +1597,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2197,6 +1609,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2214,6 +1631,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2221,6 +1643,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2245,14 +1681,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2271,6 +1707,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2288,6 +1736,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2295,6 +1750,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2389,6 +1852,24 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +msgid "Team Zulip" +msgstr "Equipe Zulip" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2402,6 +1883,51 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, python-format +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, python-format +msgid "Organization: %(organization_link)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2410,6 +1936,20 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "Obrigado," + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Unsubscribe from login notifications" +msgstr "" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2472,6 +2012,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2500,6 +2048,94 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Exemplos de tópicos curtos" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +msgid "Reset password" +msgstr "" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2508,6 +2144,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2524,6 +2183,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2799,7 +2516,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3310,16 +3027,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3328,7 +3045,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3385,27 +3102,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Alguns emails não foram validados, por isso não enviamos convites." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Não conseguimos convidar quem quer que seja." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3445,72 +3162,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Você não tem permissão para editar esta mensagem" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3530,74 +3241,82 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Incapaz de processar a mensagem" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3630,32 +3349,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3665,38 +3384,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3716,7 +3435,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3737,12 +3456,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permissão insuficiente" @@ -3773,90 +3493,98 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "O subdomínio deve ter comprimento 3 ou maior." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "O subdomínio não pode começar ou terminar com '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "O subdomínio só pode ter letras minúsculas, números e '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +#, fuzzy +#| msgid "Subdomain unavailable. Please choose a different one." +msgid "Subdomain already in use. Please choose a different one." msgstr "Subdomínio indisponível. Escolha um diferente." -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +#, fuzzy +#| msgid "Subdomain unavailable. Please choose a different one." +msgid "Subdomain reserved. Please choose a different one." +msgstr "Subdomínio indisponível. Escolha um diferente." + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Por favor, use seu endereço de e-mail real." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3928,31 +3656,31 @@ msgstr "Os subdomínios não podem começar ou terminar com '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -4033,131 +3761,130 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Não foi possível alocar fila de eventos" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Não conectado: autenticação de API ou sessão de usuário é necessário" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON corrompido" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Chave de API inválida" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Subdomínio inválido" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Acesso negado" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "Esta reação não existe." @@ -4202,7 +3929,7 @@ msgid "Settings" msgstr "Configurações" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4215,92 +3942,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Framework de integração" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integração contínua" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gestão de projetos" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "A mensagem não pode ser vazia" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4494,67 +4221,54 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, python-brace-format msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "A token não existe" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Usuário não autorizado para esta consulta" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4578,8 +4292,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4592,106 +4306,193 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" "Somente usuários administradores de uma organização podem enviar mensagens " "neste stream." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, python-brace-format msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, fuzzy, python-brace-format #| msgid "Stream(s) ({}) do not exist" msgid "Stream(s) ({stream_names}) do not exist" msgstr "Stream(s) ({}) não existente" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, fuzzy, python-brace-format #| msgid "Invalid characters in emoji name" msgid "Invalid character in stream name, at position {position}!" msgstr "Caracteres inválidos no nome do emoji" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, fuzzy, python-brace-format #| msgid "Invalid characters in emoji name" msgid "Invalid character in topic, at position {position}!" msgstr "Caracteres inválidos no nome do emoji" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4714,498 +4515,454 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, python-brace-format msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +#, fuzzy +#| msgid "Content can't be empty" +msgid "User group name can't be empty!" +msgstr "O conteúdo não pode estar vazio" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nome muito longo!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Caracteres inválidos no nome!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nome ou nome de usuário inválidos" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, python-brace-format msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, python-brace-format msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipo de interface inválido" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, python-brace-format msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Não existe tal bot" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Não existe tal usuário" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caracteres inválidos no nome do emoji" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Admins e moderadores" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Apenas admins" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1974 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2569 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Todos os membros da stream podem postar" -#: zerver/models.py:2604 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2606 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2609 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji customizado" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji extra do Zulip" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5298,57 +5055,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Você deve especificar pelo menos um endereço de e-mail." -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5366,19 +5151,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Falta o remetente" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Mensagem espelhada inválida" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5394,25 +5179,25 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, fuzzy, python-brace-format #| msgid "Invalid attachment" msgid "Invalid status: {status}" @@ -5436,26 +5221,26 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, python-brace-format msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Pelo menos um método de autenticação deve ser ativado." -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, python-brace-format msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" @@ -5485,33 +5270,33 @@ msgstr "" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5519,7 +5304,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Você deve carregar exatamente um ícone." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5539,88 +5324,79 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "A Stream já possui este nome!" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nada a fazer. Especifique pelo menos se 'adicionar' ou 'excluir'." -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, python-brace-format msgid "Not subscribed to stream id {stream_id}" msgstr "" @@ -5666,87 +5442,87 @@ msgstr "Você deve especificar um arquivo para fazer o upload" msgid "You may only upload one file at a time" msgstr "Você só pode fazer upload de um arquivo por vez" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nenhum novo dado fornecido" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Mudanças no endereço de e-mail desativadas nesta organização." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, python-brace-format msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Senha incorreta!" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Você deve fazer o upload de precisamente um avatar." @@ -5830,27 +5606,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Assinatura inválida." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5874,24 +5650,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "O tópico não pode estar vazio" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "O conteúdo não pode estar vazio" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Entrada JSON inválida" @@ -5910,7 +5686,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5918,20 +5694,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Mensagem do Slack" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5966,21 +5742,21 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, fuzzy, python-brace-format #| msgid "Invalid parameters" msgid "Invalid property {property}" msgstr "Parâmetros inválidos" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Dado inválido." -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -5992,14 +5768,29 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP inválido" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" +#, fuzzy, python-format +#~| msgid "Create a new Zulip organization" +#~ msgid "You've created the new Zulip organization %(realm_name)s." +#~ msgstr "Criar uma nova organização Zulip" + +#, fuzzy +#~| msgid "Your account" +#~ msgid "Your account details:" +#~ msgstr "Sua conta" + +#, fuzzy +#~| msgid "Examples of short topics" +#~ msgid "Example of a topic that is too long" +#~ msgstr "Exemplos de tópicos curtos" + #~ msgid "Thanks for signing up!" #~ msgstr "Obrigado por inscrever-se!" diff --git a/locale/pt_BR/translations.json b/locale/pt_BR/translations.json index c83855cd29..30dcd5f742 100644 --- a/locale/pt_BR/translations.json +++ b/locale/pt_BR/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "(sem descrição)", "(no topic)": "(sem tópico)", + "(or )": "", "(you)": "(você)", "({message_retention_days} days)": "({message_retention_days} dias)", "/dark (Switch to the dark theme)": "", @@ -82,14 +83,17 @@ "Add alert word": "Adicionar palavra de alerta", "Add all users": "", "Add another user...": "Adicionar outro usuário...", + "Add audio call": "", "Add code playground": "Adicionar code playground", "Add default streams": "", + "Add email": "", "Add emoji": "Adicionar emoji", "Add emoji reaction": "Adicionar emoji de reação", "Add extra emoji for members of the {realm_name} organization.": "Adicionar emoji extra para os membros da organização {real_name}.", "Add global time": "", "Add linkifier": "Adicionar linkifier", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Adicionar membro...", "Add new user group": "", "Add one or more users": "Adicionar um ou mais usuários", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Adicionar tarefa", "Add video call": "Adicionar chamada de vídeo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Adicionado com êxito!", "Added successfully.": "", "Administrator": "Administrador", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Tudo", "All direct messages": "", + "All groups": "", "All messages": "Todas as mensagens", "All messages including muted streams": "Todas as mensagens incluindo streams silenciadas", "All streams": "Todas as streams", @@ -136,9 +142,11 @@ "Allow subdomains": "Permitir subdomínios", "Allowed domains": "Subdomínios permitidos", "Allowed domains: {domains}": "Domínios permitidos: {domains}", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "Já inscrito em {stream}", "Already subscribed users:": "Usuários já inscritos:", + "Already subscribed.": "", "Always": "Sempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Uma chave de API pode ser usada para acessar programaticamente uma conta\n Zulip. Qualquer pessoa com acesso à sua chave de API pode ler suas \nmensagens, enviar mensagens em seu nome e, de outra forma, se passar por\n você no Zulip, então você deve guardar sua chave de API com tanto \ncuidado quanto guarda sua senha.
Recomendamos a criação de bots e o uso de contas dos bots e chaves de API para acessar a API Zulip, a menos que a tarefa exija acesso à sua conta.", "An hour ago": "Há uma hora", @@ -163,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Você tem certeza que você quer reenviar o convite para ?", "Are you sure you want to revoke the invitation to {email}?": "Você tem certeza que quer revogar o convite para {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -181,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "Voltar para streams", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Faturamento", @@ -191,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -219,6 +232,7 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", "Click to view edit history.": "", "Click to view or download.": "", "Close": "Fechar", @@ -234,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -252,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -275,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "Emoji customizado", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -304,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -316,12 +334,14 @@ "Delete": "Deletar", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -343,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "Aviso de suspensão de uso", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -350,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Desabilitado", "Discard": "", @@ -364,6 +387,7 @@ "Display on user card": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -389,6 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", + "Edit profile": "", "Edit selected draft": "Editar rascunho selecionado", "Edit selected message or view source": "", "Edit status": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filtrar streams", "Filter subscribers": "", "Filter topics": "Filtrar tópicos", @@ -500,7 +523,7 @@ "First message": "Primeira mensagem", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", - "Follow topic": "", + "Follow": "", "Followed": "", "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", @@ -513,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "Geral", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Gerar link de convite", "Generate new API key": "", @@ -546,14 +570,17 @@ "Hint": "", "Hint (up to 80 characters)": "", "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humanos", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -562,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Iniciar uma busca", "Insert new line": "Inserir nova linha", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrações", "Interface": "", "Invalid URL": "", @@ -585,6 +614,8 @@ "Inviting...": "Convidando...", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -668,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -691,6 +724,7 @@ "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -747,31 +781,34 @@ "Next message": "Pŕoxima mensagem", "Next unread direct message": "", "Next unread topic": "Próximo tópico não lido", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "Sem resultados da busca", "No search results.": "", "No stream subscriptions.": "", + "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -790,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -806,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "", "Open message menu": "Abrir o menu de mensagens", @@ -876,6 +915,7 @@ "Previous message": "Mensagem passada", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -890,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -937,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -955,10 +997,14 @@ "See how to configure email.": "Veja como configurar o e-mail.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", @@ -996,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Inscrever-se", "Silent mentions do not trigger notifications.": "", @@ -1007,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "Adicionar estrela à mensagem selecionada", @@ -1032,8 +1080,10 @@ "Subscribe": "Inscrever-se", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Inscrever-se/cancelar inscrição a stream selecionada", + "Subscribe {full_name} to streams": "", "Subscribed": "Inscrito", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1060,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1072,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1119,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Alternar o menu de engrenagem", "Toggle topic mute": "Alternar silenciar tópico", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1131,6 +1181,8 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", "URL template": "", "USERS": "USUÁRIOS", @@ -1145,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1205,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Ver rascunhos", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1233,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "Semana da {}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1247,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1281,7 +1336,10 @@ "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Você está usando uma versão antiga do aplicativo Zulip para desktop com bugs de segurança conhecidos.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Você não está inscrito nesta stream e ninguém falou sobre isso ainda!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1303,9 +1361,15 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1318,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Você ainda não foi mencionado!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1349,9 +1418,7 @@ "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1364,9 +1431,6 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", @@ -1383,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} many {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/pt_PT/LC_MESSAGES/django.po b/locale/pt_PT/LC_MESSAGES/django.po index 6f9dff4be4..2e351b79d1 100644 --- a/locale/pt_PT/LC_MESSAGES/django.po +++ b/locale/pt_PT/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: João Alves , 2021-2022\n" "Language-Team: Portuguese (Portugal) (http://app.transifex.com/zulip/zulip/language/pt_PT/)\n" @@ -19,46 +19,47 @@ msgstr "" "Language: pt_PT\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Não permitido a visitantes" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organização inválida" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Canais públicos" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Canais privados" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Mensagens directas" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Nome do gráfico desconhecido: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "A hora de início é posterior à hora de fim. Início: {start}, Fim: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Sem dados analíticos disponíveis. Por favor contacte o administrador do servidor." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parâmetros inválidos" @@ -119,29 +120,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Algo correu mal. Por favor contacte {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Algo correu mal. Por favor recarregue a página." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Algo correu mal. Por favor aguarde alguns segundos e volte a tentar." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -173,7 +176,7 @@ msgstr "Não foi possível actualizar o plano. O plano foi expirado e substituí msgid "Unable to update the plan. The plan has ended." msgstr "Não foi possível actualizar o plano. O plano terminou." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -189,14 +192,14 @@ msgstr "O seu plano já está em {licenses} licenças no período de facturaçã msgid "You cannot decrease the licenses in the current billing period." msgstr "Não pode diminuir as licenças no período de facturação actual." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "O seu plano já está agendado para renovação com {licenses_at_next_renewal} licenças." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Nada a alterar." @@ -208,7 +211,7 @@ msgstr "Sem clientes para esta organização!" msgid "Session not found" msgstr "Sessão não encontrada" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Tem de ser administrador da facturação ou proprietário da organização" @@ -258,7 +261,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Erro interno do servidor" @@ -560,9 +563,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -580,9 +583,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -592,9 +595,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Requerer patrocínio" @@ -857,51 +860,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Inscrever-se com %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Obrigado por se inscrever!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Nenhum e-mail ainda? Podemos reenviá-lo." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "As actualizações podem ser atrasadas." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Tentar agora." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Mensagens" @@ -1149,6 +1152,159 @@ msgstr "Utilizadores normais" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Bem-vindo ao Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL da organização: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Usar conta LDAP para iniciar sessão" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s no Zulip: Detalhes da sua nova organização" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s no Zulip: Detalhes da sua nova conta" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1156,6 +1312,39 @@ msgstr "" msgid "Hi," msgstr "Olá," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1169,22 +1358,9 @@ msgstr "Recebemos um pedido de alteração de endereço de e-mail para a conta Z msgid "Confirm email change" msgstr "Confirmar alteração de e-mail" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verifique o seu novo endereço de e-mail" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1239,17 +1415,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1354,225 +1519,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Bem-vindo ao Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL da organização: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Usar conta LDAP para iniciar sessão" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s no Zulip: Detalhes da sua nova organização" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s no Zulip: Detalhes da sua nova conta" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Exemplos de temas curtos" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1657,14 +1603,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1696,21 +1642,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1718,21 +1688,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1775,29 +1745,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Gerir preferências de e-mail:" @@ -1960,6 +1930,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1988,6 +1966,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Exemplos de temas curtos" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2376,7 +2426,7 @@ msgid "Incoming webhooks" msgstr "Webhooks de entrada" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Bots interativos" @@ -2876,290 +2926,293 @@ msgid "" " " msgstr "\n Também pode usar a app desktop do Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Alguns desses endereços já estão a usar o Zulip, por isso não lhes enviamos convite. Enviamos convite para os restantes!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nada a alterar" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Os widgets não podem ser editados." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Não tem permissão para editar esta mensagem" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Você não tem permissão para usar menções wildcard neste fluxo." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Não tem permissão para mover esta mensagem" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Os tópicos são obrigatórios nesta organização" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3175,8 +3228,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3195,18 +3248,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3215,38 +3282,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Sem descrição." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3256,56 +3323,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "A conta não está associada a este subdomínio" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Tem de ser administrador do servidor" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permissão insuficiente" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3320,94 +3390,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "O subdomínio não pode começar nem terminar com '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "O subdomínio só pode conter letras minúsculas, números, e '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomínio indisponível. Por favor, escolha um diferente." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Por favor, utilize o seu endereço de e-mail real." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nova palavra-passe" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3472,31 +3548,31 @@ msgstr "Os subdomínios não podem começar nem terminar com '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "O domínio só pode conter letras, números, '.' e '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "O tema não pode conter bytes nulos" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Tem de especificar exactamente 1 ID de canal para mensagens de canal" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3529,166 +3605,166 @@ msgstr "Já tem uma conta." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "O emoji '{}' não existe" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personalizado inválido." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nome de emoji personalizado inválido." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Este emoji personalizado foi desativado." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Código de emoji inválido." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nome de emoji inválido" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Tipo emoji inválido." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Tem de ser administrador da organização ou autor do emoji" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Nome de emoji em falta" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "O canal '{stream}' não existe" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "O canal com ID '{stream_id}' não existe" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "Proprietário da organização" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "utilizador" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Tem de ser membro da organização" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Tem de ser administrador da organização" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Tem de ser proprietário da organização" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Conta desativada" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Esta organização foi desativada" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Chave API inválida" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "O evento '{event_type}' não é atualmente suportado pelo webhook {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Subdomínio inválido" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Acesso negado" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3696,6 +3772,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3737,8 +3821,8 @@ msgid "Settings" msgstr "Definições" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Vá a Definições para configurar as suas definições de notificação e visualização." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3750,264 +3834,272 @@ msgid "" "and give it a go!" msgstr "Clique aqui para começar uma nova conversa. Escolha um tema (2-3 palavras e fica óptimo), e experimente! " -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Apoio ao cliente" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Implementação" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Comunicação" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Diversos" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Gestão de projetos" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Produtividade" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Controlo de versões" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "A mensagem não pode estar em branco" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "A mensagem não pode conter bytes nulos" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "O operador {} não é suportado." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Olá e bem-vindo ao Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Este canal é privado, como indicado pelo ícone de aloquete ao lado do nome do canal." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Os canais privados são apenas visíveis a membros do canal." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Os temas são uma forma simples de manter conversas organizadas." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Pode aprender mais sobre temas em [Canais e temas]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4022,669 +4114,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} mencionou-o:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} mencionou todos:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Apenas administradores da organização podem enviar para este canal." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Apenas administradores da organização e moderadores podem enviar para este canal." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Os Visitantes não podem enviar para este canal." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Novos membros não podem enviar para este canal." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "ID de canal inválido" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Não estão permitidos canais web-públicos." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Nome de canal demasiado longo (limite: {} caracteres)." - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} não é booleano" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} não é uma data" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} não é um número inteiro" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} não é uma lista" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} inválido" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} é demasiado longo (limite: {max_length} caracteres)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "O tamanho da imagem excede o limite." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grupo de utilizadores inválido" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nome demasiado longo!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nome demasiado curto!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Caracteres inválidos no nome!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Formato inválido!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "O nome já está a ser usado!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tipo de bot inválido" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tipo de interface inválido" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "ID de utilizador inválido: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "O utilizador está desativado" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} inválido" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} é demasiado longo (limite: {max_length} caracteres)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} não é uma data" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} não é um número inteiro" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} não é booleano" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} não é um código hex de cor válido" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} não é uma lista" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} deve ter exactamente {length} itens" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} está errado)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} não é um URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' não é uma opção válida para '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "eventos do canal" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caracteres inválidos no nome do emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Admins, moderadores, membros e visitantes" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Admins, moderadores e membros" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Admins e moderadores" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Apenas admins" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Ninguém" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Proprietário da organização" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administrador da organização" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderador" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membro" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Visitante" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-público" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Público" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Privado, histórico partilhado" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Privado, histórico protegido" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Todos os membros do canal podem publicar" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Apenas administradores da organização podem publicar" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Apenas administradores da organização e moderadores podem publicar" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Apenas membros integrais da organização podem publicar" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personalizados" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista de opções" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Texto curto" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Texto longo" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Conta externa" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Pronomes" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Endereço de IP desconhecido" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "um sistema operativo desconhecido" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Argumento 'queue_id' em falta" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Argumento 'last_event_id' em falta" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4752,66 +4933,99 @@ msgstr "Já existe um campo com esse título." msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Tem de especificar pelo menos um endereço de e-mail." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Não tem permissão para apagar esta mensagem" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Mensagem já apagada" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4819,22 +5033,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Destinatário em falta" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4850,27 +5065,28 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Estado inválido: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4886,37 +5102,37 @@ msgid "" "emoji_code" msgstr "Pelo menos um dos seguintes argumentos tem de estar presente: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Pelo menos um método de autenticação tem de ser permitido." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Domínio inválido: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4928,42 +5144,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Tem de carregar exactamente um ficheiro." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4971,7 +5188,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Tem de carregar exactamente um ícone." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4979,107 +5196,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "Tem de carregar exactamente um logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Os canais privados não podem ser predefinidos." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Os canais predefinidos não podem ser alterados para privados." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "O canal já tem esse nome!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nada para fazer. Especifique pelo menos um entre \"adicionar\" ou \"apagar\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} criou os seguintes canais: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} criou o novo canal {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "novos canais" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Não está autorizado a ver este canal.

" @@ -5095,97 +5305,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Ficheiro não encontrado.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Nome de ficheiro inválido" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Tem de especificar um ficheiro para carregar" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Só pode carregar um ficheiro simultaneamente" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Alterações de avatar estão bloqueadas nesta organização." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "A alteração do endereço de e-mail está bloqueada nesta organização." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Palavra-passe errada!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Nova palavra-passe demasiado fraca!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Tem de carregar exactamente um avatar." @@ -5232,6 +5453,10 @@ msgstr "" msgid "Username already in use" msgstr "Nome de utilizador já em uso" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5242,8 +5467,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Endereços de e-mail descartáveis não são permitidos nesta organização" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "O e-mail '{}' já está a ser usado" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5261,27 +5487,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "Credenciais Zoom inválidas" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Falhou a criação de chamada Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5301,28 +5527,28 @@ msgstr "Cache Kerberos inválida" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "O tema não pode ficar em branco" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "O conteúdo não pode estar em branco" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5341,7 +5567,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5349,19 +5575,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Erro: Parâmetro channels_map_to_topics diferente de 0 ou 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Mensagem do Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Acção de webhook Wordpress desconhecida: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5378,47 +5605,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Não pode usar mobile_flow_otp e desktop_flow_otp juntos." diff --git a/locale/pt_PT/translations.json b/locale/pt_PT/translations.json index bd3f23f7c8..31f3effaf7 100644 --- a/locale/pt_PT/translations.json +++ b/locale/pt_PT/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(oculto)", "(no description)": "(sem descrição)", "(no topic)": "(sem tema)", + "(or )": "", "(you)": "(voçê)", "({message_retention_days} days)": "({message_retention_days} dias)", "/dark (Switch to the dark theme)": "/dark (Mudar para o tema escuro)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} não está subscrito a este canal. Não será notificado a não ser que o subscreva.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} tem {number_of_invites_by_user} convites não expirados.", "Subscribe": "Subscrever", - "Click here to learn about exporting private streams and messages.": " Clicar aqui para aprender sobre exportação de canais e mensagens privados.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Faça Upgrade para ter mais espaço.", " to add a new line": " para adicionar nova linha", " to send": " para enviar", @@ -82,15 +83,18 @@ "Add alert word": "Adicionar palavra-alerta", "Add all users": "Adicionar todos os utilizadores", "Add another user...": "Adicionar outro utilizador...", + "Add audio call": "", "Add code playground": "Adicionar playground de código", + "Add default streams": "", + "Add email": "", "Add emoji": "Adicionar emoji", "Add emoji reaction": "Adicionar reacção emoji", "Add extra emoji for members of the {realm_name} organization.": "Adicionar emoji extra para membros da organização {realm_name}.", "Add global time": "Adicionar hora global", "Add linkifier": "Adicionar criador de link", "Add members": "Adicionar membros", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Adicionar membro...", - "Add new default stream": "Adicionar novo canal padrão", "Add new user group": "Adicionar novo grupo de utilizadores", "Add one or more users": "Adicionar um ou mais utilizadores", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Adicionar assinantes. Use nomedogrupo ou #nomedestram para adicionar assinantes em massa.", "Add task": "Adicionar tarefa", "Add video call": "Adicionar videochamada", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Adicionado com sucesso!", "Added successfully.": "Adicionado com sucesso.", "Administrator": "Administrador", @@ -124,6 +129,7 @@ "Alerted messages": "Mensagens alertadas", "All": "Todo", "All direct messages": "", + "All groups": "", "All messages": "Todas as mensagens", "All messages including muted streams": "Todas as mensagens incluindo canais silenciados", "All streams": "Todos os canais", @@ -136,9 +142,11 @@ "Allow subdomains": "Permitir sub-domínios", "Allowed domains": "Domínios permitidos", "Allowed domains: {domains}": "Domínios permitidos: {domains}", + "Already members:": "", "Already not subscribed.": "Já não está subscrito.", "Already subscribed to {stream}": "Já subscrito a {stream}", "Already subscribed users:": "Utilizadores já subscritos:", + "Already subscribed.": "", "Always": "Sempre", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Uma chave API pode ser usada para aceder programaticamente a uma conta Zulip. Qualquer um com acesso à sua chave API tem a capacidade de ler as suas mensagens, enviar mensagens em seu nome e fazer-se passar por si no Zulip, portanto, deve proteger a sua chave API com o mesmo cuidado que protege a palavra-passe.
Recomendamos a criação de bots e uso das contas dos bots e chaves API para aceder ao API do Zulip, excepto quando seja necessário acesso à sua conta.", "An hour ago": "Uma hora atrás", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Arquivar canal", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Arquivar o canal irá imediatamente desinscrever todos. Esta acção não pode ser desfeita.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Tem certeza de que quer criar o canal ''''{stream_name}'''' e subscrever {count} utilizadores nele?", "Are you sure you want to deactivate this organization?": "Tem certeza de que quer desativar esta organização?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Tem certeza de que quer reenviar o convite para ?", "Are you sure you want to revoke the invitation to {email}?": "Tem certeza de que quer revogar o convite para {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Tem certeza de que quer revogar este link de convite criado por {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Tem certeza de que quer tirar destaque a todas as mensagens em ? Esta acção não pode ser desfeita.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Tem certeza de que quer tirar destaque a todas as mensagens destacadas? Esta acção não pode ser desfeita.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Alterações de avatar estão bloqueadas nesta organização", "Avatar from Gravatar": "Avatar do Gravatar", "Back to streams": "Voltar para canais", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Faturação", @@ -190,8 +201,11 @@ "Bot owner": "Dono do bot", "Bot type": "Tipo de bot", "Bots": "Bots", + "Browse 1 more stream": "", "Browse recent conversations": "Navegar conversas recentes", "Browse streams": "Navegar canais", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Negócios", "Busy": "Ocupado", "By deactivating your account, you will be logged out immediately.": "Desativando a sua conta, a sessão será terminada imediatamente.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Clique aqui para revelar.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Clique fora da caixa de texto para guardar. Notificaremos automaticamente aqueles que tenham sido adicionados ou removidos.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Clique para ver ou transferir.", "Close": "Fechar", "Close modal": "Fechar modal", @@ -232,7 +248,7 @@ "Commuting": "Em viagem", "Compact": "Compacto", "Complete": "Completo", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Complete o perfil da organização para marcar e explicar o propósito desta organização Zulip.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Compôr mensagem", "Compose your message here": "Compôr mensagem aqui", "Compose your message here...": "Compôr mensagem aqui...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Converter emoticons antes de enviar (:) torna-se 😃)", "Cookie Bot": "Bot de cookies", "Copied!": "Copiado!", + "Copy URL": "", "Copy address": "Copiar endereço", "Copy and close": "Copiar e fechar", "Copy code": "Copiar código", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Personalizado", + "Custom URL": "", "Custom emoji": "Emoji personalizados", "Custom language: {query}": "Idioma personalizado: {query}", "Custom linkifier added!": "Gerador de link personalizado adicionado!", @@ -302,10 +320,12 @@ "Deactivated": "Desativado", "Deactivated users": "Utilizadores desativados", "December": "Dezembro", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "O padrão é {language}. Use 'texto' para desativar o realce.", "Default language for code blocks": "Linguagem predefinida para blocos de código", "Default streams": "Canais predefinidos", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Definições de utilizador predefinidas", "Default view": "Vista predefinida", @@ -314,12 +334,14 @@ "Delete": "Apagar", "Delete alert word": "Apagar palavra-alerta", "Delete all drafts": "Apagar todos os rascunhos", + "Delete all selected drafts": "", "Delete code playground?": "Apagar playground de código?", "Delete custom profile field?": "Apagar campo de perfil personalizado?", "Delete data export?": "Apagar exportação de dados?", "Delete draft": "Apagar rascunho", "Delete file": "Apagar ficheiro", "Delete file?": "Apagar ficheiro?", + "Delete group": "", "Delete icon": "Apagar ícone", "Delete linkifier?": "Apagar gerador de link?", "Delete logo": "Apagar logótipo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Dependendo da dimensão da organização, uma exportação pode demorar entre segundis e uma hora.", "Deprecation notice": "Aviso de suspensão de uso", "Description": "Descrição", + "Deselect draft": "", "Desktop": "Desktop", "Desktop & mobile apps": "Apps de desktop e móvel", "Desktop message notifications": "Notificações de mensagens na área de trabalho", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentação detalhada de formatação de mensagens", "Detailed search filters documentation": "", "Direct message": "Mensagem directa", + "Direct message to me": "", "Direct messages": "Mensagens directas", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Desactivado", "Discard": "Rejeitar", @@ -360,9 +385,9 @@ "Display my availability to other users": "Mostrar a minha disponibilidade a outros utilizadores", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "Mostrar no cartão de utilizador", - "Display settings": "Definições de visualização", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Quer adicionar todos?", + "Do you want to mark them all as read?": "", "Domain": "Domínio", "Don’t allow disposable email addresses": "Não permitir endereços de e-mail descartáveis", "Download": "Transferir", @@ -388,7 +413,7 @@ "Edit custom profile field": "Editar campo de perfil personalizado", "Edit linkfiers": "Editar geradores de link", "Edit message": "Editar mensagem", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Editar rascunho seleccionado", "Edit selected message or view source": "Editar a mensagem seleccionada ou ver fonte", "Edit status": "Editar estado", @@ -398,7 +423,6 @@ "Edit your last message": "Editar a sua última mensagem", "Edit your profile": "Editar o seu perfil", "Edit {group_name}": "Editar {group_name}", - "Edited ({last_edit_timestr})": "Editado ({last_edit_timestr})", "Edited by {full_name}": "Editado por {full_name}", "Education (for-profit)": "Educação (fins lucrativos)", "Education (non-profit)": "Educação (sem fins lucrativos)", @@ -461,6 +485,7 @@ "External account type": "Tipo de conta externa", "External link": "Link externo", "Failed": "Falhou", + "Failed adding one or more streams.": "", "Failed to create video call.": "Falhou a criação de videochamada-", "Failed to generate preview": "Falhou a pré-visualização", "Failed to upload %'{file}'": "Falhou o carregamento %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filtrar exportações", "Filter groups": "Filtrar grupos", "Filter invites": "Filtrar convites", - "Filter languages": "Filtrar idiomas", "Filter linkifiers": "Filtrar geradores de link", "Filter members": "Filtrar membros", "Filter muted users": "Filtrar utilizadores silenciados", - "Filter roles": "", "Filter streams": "Filtrar canais", "Filter subscribers": "Filtrar subscritores", "Filter topics": "Filtrar temas", @@ -500,6 +523,9 @@ "First message": "Primeira mensagem", "First time? Read our guidelines for creating and naming streams.": "Primeira vez? Leia as nossas guidelines para criar e nomear canais.", "First time? Read our guidelines for creating user groups.": "Primeira vez? Leia as nossas guidelines para criação de grupos de utilizadores.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Atribuição GIPHY", "GIPHY integration": "Integração GIPHY", "General": "Geral", + "Generate URL for an integration": "", "Generate email address": "Gerar endereço de e-mail", "Generate invite link": "Gerar link de convite", "Generate new API key": "Gerar nova chave API", @@ -542,14 +569,18 @@ "High contrast mode": "Modo de alto-contraste", "Hint": "Pista", "Hint (up to 80 characters)": "Dica (até 80 caracteres)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Humanos", "Idle": "Ocioso", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Utilizadores desactivados ignorados:", "Image": "Imagem", "In a meeting": "Em reunião", "Inactive": "Inactivo", "Inactive bots": "Bots inactivos", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Incluir o conteúdo de mensagens em e-mails de notificação de mensagem", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Webhooks de entrada só conseguem enviar mensagens.", "Initiate a search": "Iniciar uma pesquisa", "Insert new line": "Inserir nova linha", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrações", "Interface": "Interface", "Invalid URL": "URL inválido", @@ -581,6 +614,8 @@ "Inviting...": "A convidar...", "Italic": "Itálico", "January": "Janeiro", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "Aderir {realm_name}", "Joined": "Juntou", @@ -599,8 +634,10 @@ "Last 30 days": "Últimos 30 dias", "Last 6 months": "Últimos 6 meses", "Last active": "Última atividade", + "Last edited {last_edit_timestr}": "", "Last message": "Última mensagem", "Last modified": "Última modificação", + "Last moved {last_edit_timestr}": "", "Learn more": "Saber mais", "Learn more about mentions here.": "Saiba mais sobre menções aqui .", "Learn more about starring messages here.": "Saiba mais sobre como colocar estrela em mensagens aqui .", @@ -623,6 +660,7 @@ "Log out": "Terminar sessão", "Looking for our integrations or API documentation?": "Procura a nossa documentação de integrações ou API's?", "MOVED": "MOVIDO", + "Main menu": "", "Manage bot": "Gerir bot", "Manage streams": "Gerir canais", "Manage this bot": "Gerir este bot", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Mencione um horário com reconhecimento de fuso horário", "Mentioned in": "Mencionado em", "Mentions": "Menções", - "Menu": "Menu", "Menus": "Menus", "Message #{stream_name}": "Enviar para #{stream_name}", "Message #{stream_name} > {topic_name}": "Mensagem para #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Mensagem para {recipient_names}", "Message {recipient_name} ({recipient_status})": "Mensagem para {recipient_name} ({recipient_status})", "Messages in all public streams": "Mensagens em todos os canais públicos", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Móvel", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "Mover esta e todas as mensagens seguintes neste tema", "Move topic": "Mover tema", - "Moved ({last_edit_timestr})": "Movido ({last_edit_timestr})", "Moved by {full_name}": "Movido por {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Deve ser convidado por um assinante; novos assinantes só podem ver as mensagens enviadas depois de entrarem; oculto de utilizadores não administradores", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Deve ser convidado por um assinante; novos assinantes podem visualizar o histórico completo de mensagens; oculto de utilizadores não administradores", + "Mute": "", "Mute stream": "Silenciar canal", "Mute this user": "Silenciar este utilizador", "Mute topic": "Silenciar tema", @@ -734,38 +773,42 @@ "New password is too weak": "A nova palavra-passe é demasiado fraca", "New stream announcements": "Anúncios de novo canal", "New stream message": "Mensagem de novo canal", + "New stream notifications": "Notificações de novo canal", "New task": "Nova tarefa", "New topic": "Novo tema", "New user announcements": "Anúncios de novo utilizador", + "New user notifications": "Notificações de novo utilizador", "Next message": "Mensagem seguinte", "Next unread direct message": "", "Next unread topic": "Próximo tema não lido", - "Next week": "Próxima semana", "No bots match your current filter.": "Nenhum bot corresponde ao filtro atual.", + "No conversations match your filters.": "", "No custom emoji.": "Sem emoji personalizados.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nenhum canal predefinido corresponde ao filtro atual.", "No description.": "Sem descrição.", + "No drafts selected": "", "No drafts.": "Sem rascunhos.", "No exports.": "Sem exportações.", "No invites match your current filter.": "Nenhum convite corresponde ao filtro atual.", "No language set": "Sem idioma definido", "No linkifiers set.": "Nenhum gerador de link definido.", + "No matching results": "", "No matching users.": "Nenhum utilizador correspondente.", "No one has read this message yet.": "Ainda ninguém leu esta mensagem.", "No owner": "Sem proprietário", "No playgrounds configured.": "Nenhum playground configurado.", "No restrictions": "Sem restrições", "No scheduled messages.": "", - "No search results": "Nenhum resultado de pesquisa", "No search results.": "", "No stream subscriptions.": "Sem subscrições de canal.", "No streams": "Nenhum canal", "No topics are marked as resolved.": "Nenhum tópico está marcado como resolvido.", - "No topics match your current filter.": "Nenhum tema corresponde ao filtro atual.", "No user group subscriptions.": "Sem subscrições de grupo de utilizadores.", "No user groups": "", "No user to subscribe.": "Sem utilizadores para subscrever.", "No users match your current filter.": "Nenhum utilizador corresponde ao filtro atual.", + "No users to add.": "", "No, I'll catch up.": "Não, eu ponho-me a par.", "Nobody": "Ninguém", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "Notificar canal", "Notify this user by email?": "Notificar este utilizador por e-mail?", "November": "Novembro", + "Numbered list": "", "October": "Outubro", "Old password": "Palavra-passe antiga", "Once you leave this group, you will not be able to rejoin.": "Depois de sair deste grupo, não conseguirá voltar.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Apenas proprietários podem alterar estas definições.", "Only stream members can add users to a private stream": "Apenas membros do canal podem adicionar utilizadores a um canal privado", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Apenas subscritores deste canal podem editar as permissões de canal.", "Open": "Abrir", "Open message menu": "Abrir menu de mensagem", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "Grupo político", "Posted by {full_name}": "Postado por {full_name}", + "Preferences": "", "Press > for list of topics": "Pressione > para a lista de temas", "Prevent users from changing their avatar": "Impedir utilizadores de alterar o seu avatar", "Prevent users from changing their email address": "Impedir utilizadores de alterar o seu endereço de e-mail", @@ -869,6 +915,7 @@ "Previous message": "Mensagem anterior", "Privacy": "Privacidade", "Privacy settings": "Definições de privacidade", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Privado, histórico protegido", "Private, shared history": "Privado, histórico partilhado", "Profile": "Perfil", @@ -883,6 +930,7 @@ "Reactivate bot": "Reativar bot", "Reactivate this bot": "Reactivar este bot", "Reactivate this user": "Reactivar este utilizador", + "Reactivate user": "", "Reactivate {name}": "Reactivar {name}", "Read receipts": "Recibos de leitura", "Read receipts are currently disabled in this organization.": "Os recibos de leitura estão actualmente desactivados nesta organização.", @@ -930,6 +978,7 @@ "Saved as draft": "Guardar como rascunho", "Saved. Please reload for the change to take effect.": "Guardado. Por favor recarregue para que a alteração entre em efeito.", "Saving": "A guardar", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Veja como configurar o e-mail.", "Select a stream": "", "Select a stream below or change topic name.": "Seleccione um canal abaixo ou altere o nome do tema.", - "Select date and time": "Seleccionar data e hora", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Seleccionar emoji", "Select language": "Seleccionar idioma", + "Select stream": "", "Send": "Enviar", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Enviar aviso automatizado para novo tema", "Send automated notice to old topic": "Enviar aviso automático para o velho tema", "Send digest emails when I'm away": "Enviar e-mails de resumo quando estou ausente", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Mostrar visualizações de imagens enviadas e vinculadas", "Show starred message count": "Mostrar contador de mensagens destacadas", "Show status text": "Mostrar texto de estado", + "Show unread counts for": "", "Show/change your API key": "Ver/alterar a sua chave API", "Sign up": "Inscrever-se", "Silent mentions do not trigger notifications.": "Menções silenciosas não acionam notificações.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Ordenar por tráfego semanal estimado", "Sort by name": "Ordenar por nome", "Sort by number of subscribers": "Ordenar por número de subscritores", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Destacar", "Star selected message": "Destacar mensagem seleccionada", @@ -1024,8 +1080,10 @@ "Subscribe": "Subscrever", "Subscribe them": "Assiná-los", "Subscribe to/unsubscribe from selected stream": "Subscrever/ Desinscrever o canal seleccionado", + "Subscribe {full_name} to streams": "", "Subscribed": "Subscrito", "Subscribed streams": "Canais subscritos", + "Subscribed successfully!": "", "Subscriber count": "Número de subscritores", "Subscribers": "Subscritores", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Não existem atualmente palavras-alerta.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "Administra os seguintes bots:", "This Zulip server is running an old version and should be upgraded.": "Este servidor Zulip está a correr uma versão antiga e deve ser actualizado.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Este é o aspecto de uma notificação do Zulip.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Esta mensagem foi ocultada porque silenciou este utilizador.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Fuso horário", "Time's up!": "Acabou o tempo!", "Tip: You can also send \"/poll Some question\"": "Dica: Também pode enviar \"/poll Alguma pergunta\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Para adicionar realce de sintaxe a um bloco de código de várias linhas, adicione o primeiro Nome curto de pigmentos após o primeiro conjunto de aspas. Você também pode fazer um bloco de código recuando cada linha com 4 espaços.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Para convidar utilizadores, por favor aumente o número de licenças ou desactive utilizadores inactivos.", "To preserve your reading state, this view does not mark messages as read.": "Para preservar o estado de leitura, esta vista não marca as mensagens como lidas.", "Today": "Hoje", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Alternar subscrição", "Toggle the gear menu": "Alternar o menu de engrenagem", "Toggle topic mute": "Alternar silenciar tema", - "Tomorrow": "Amanhã", "Tomorrow at {time}": "", "Topic": "Tema", "Topic muted": "Tema silenciado", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Autenticação de dois fatores", "Type": "Tipo", + "URL": "", + "URL for your integration": "", "URL pattern": "Padrão de URL", - "URL prefix": "Prefixo do URL", "URL template": "", "USERS": "UTILIZADORES", "Uncheck all": "Desmarcar tudo", @@ -1139,6 +1197,7 @@ "Unmute this user": "Ativar o som deste utilizador", "Unmute topic": "Ativar tópico", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Desafixar canal do topo", "Unread": "Não lida", "Unread count badge (appears in desktop sidebar and browser tab)": "Contador de não lidas (aparece na barra lateral na app desktop e no separador no browser)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "Ver mensagens directas", "View drafts": "Ver rascunhos", - "View edit history": "Ver histórico de edição", + "View edit and move history": "", "View file": "Ver ficheiro", "View in playground": "Ver em playground", "View in {name}": "Ver em {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web-público", "Wednesday": "Quarta-feira", "Week of {date}": "Semana de {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Bem-vindo de volta! Tem {unread_msgs_count} mensagens não lidas. Quer marcá-las todas como lidas?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "quando você desativa , eles serão imediatamente desconectados.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Se as menções wildcard como @all são tratadas como menções para fins de notificações.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Quem pode aceder ao canal?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Quem pode criar e gerir grupos de utilizadores", "Who can create private streams": "Quem pode criar canais privados", "Who can create public streams": "Quem pode criar canais públicos", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Quem pode criar canais web-públicos", "Who can delete their own messages": "Quem pode apagar as suas próprias mensagens", - "Who can invite users to this organization": "Quem pode convidar utilizadores para esta organização", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Quem pode postar no canal?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Quem pode usar menções @all/@everyone em grandes canais", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Você e", "You and {display_reply_to}": "Você e {display_reply_to}", "You and {recipients}": "Você e {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Não está atualmente subscrito a este canal.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Você está enviando uma mensagem para um tópico resolvido. Você pode enviar como está ou marcar o tópico como não resolvido primeiro.", "You are using an old version of the Zulip desktop app with known security bugs.": "Está a usar uma versão antiga da app desktop do Zulip com falhas de segurança conhecidas.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Não está subscrito a este canal e ainda ninguém falou sobre isso!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Você também pode fazer tabelas com isto Sintaxe da tabela Markdown-ish .", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Você não tem permissão para usar menções wildcard neste fluxo.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Obtém", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Silenciou .", + "You have muted this topic": "", "You have no active bots.": "Não tem bots ativos", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Ainda não silenciou utilizadores.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Não carregou ficheiros.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Ainda não foi mencionado!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Tem de ser administrador da organização para criar um canal sem o subscrever.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "É preciso estar a executar o espelho do Zephyr para enviar mensagens!", "You searched for:": "Pesquisou por:", "You subscribed to stream ": "", "You type": "Você escreve", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Não está subscrito a este canal. Não será notificado se outros utilizadores responderem à sua mensagem.", "Your API key:": "A sua chave API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "O Zulip precisa de enviar e-mails para confirmar os endereços dos utilizadores e enviar notificações.", "Zulip needs your permission to enable desktop notifications.": "O Zulip precisa da sua autorização para activar notificações de desktop.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "As traduções do Zulip são um contributo da nossa fabulosa comunidade de tradutores voluntários. Se gostaria de ajudar, veja as guidelines de tradução do Zulip.", "[Configure]": "[Definir]", - "[Disable]": "[Desactivar]", - "[More…]": "[Mais...]", "[Quoting…]": "[Citando...]", - "[Unset]": "[Indefinido]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "e {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "em 1 hora", - "in 20 minutes": "em 20 minutos", - "in 3 hours": "em 3 horas", "invisible mode off": "", "leafy green vegetable": "vegetal verde e folhoso", "marketing": "marketing", "more conversations": "", "more topics": "mais temas", - "or": "ou", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "há {days_old} dias", "{full_name} is typing…": "{full_name} está a escrever…", "{hours} hours ago": "há {hours} horas", - "{items_selected} selected": "{items_selected} seleccionados", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} minutos para editar", "{minutes} minutes ago": "há {minutos} minutos", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Esta mensagem foi lida por {num_of_people} pessoa:} many {Esta mensagem foi lida por {num_of_people} pessoas:} other {Esta mensagem foi lida por {num_of_people} pessoas:}}", "{seconds} sec to edit": "{seconds} segundos para editar", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [disse]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} reagiu com {emoji_name}" diff --git a/locale/ro/LC_MESSAGES/django.po b/locale/ro/LC_MESSAGES/django.po index 756eb75316..7d95da4172 100644 --- a/locale/ro/LC_MESSAGES/django.po +++ b/locale/ro/LC_MESSAGES/django.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Viorel-Cosmin Miron , 2022\n" "Language-Team: Romanian (http://app.transifex.com/zulip/zulip/language/ro/)\n" @@ -22,46 +22,47 @@ msgstr "" "Language: ro\n" "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Nu este permis pentru utilizatorii în vizită" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Organizație nevalidă" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Huburi publice" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Huburi private" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Nume de hartă necunoscut: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Începutul este mai târziu decât sfârșitul. Început: {start}, Sfârșit: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Nu există date analitice. Vă rugăm contactați administratorul serverului." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Parametri Incorecţi" @@ -122,29 +123,31 @@ msgid "" msgstr "Organizația dvs. nu are suficiente licențe Zulip neutilizate pentru a invita utilizatorii {num_invites}." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Facturează pentru cel puțin {} utilizatori." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Facturi cu mai mult de {} licențe nu pot fi procesate din această pagina. Pentru a finaliza actualizarea te rugam contactează {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Ceva nu a mers bine. Vă rugam contactați {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Ceva a funcționat greșit. Te rugam reîncărcă pagina." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Ceva a funcționat greșit. Te rugam să aștepți câteva secunde apoi reîncearcă." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -176,7 +179,7 @@ msgstr "Nu se poate actualiza planul. Planul a fost expirat și înlocuit cu un msgid "Unable to update the plan. The plan has ended." msgstr "Nu se poate actualiza planul. Planul s-a încheiat." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -192,14 +195,14 @@ msgstr "Planul dvs. este deja pe licențe {licenses} în perioada de facturare c msgid "You cannot decrease the licenses in the current billing period." msgstr "Nu puteți reduce licențele în perioada curentă de facturare." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Planul dvs. este deja programat să fie reînnoit cu licențe {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Nimic de schimbat." @@ -211,7 +214,7 @@ msgstr "Niciun client pentru această organizație!" msgid "Session not found" msgstr "Sesiune nu a fost găsită" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Trebuie să fie administrator care facturează sau proprietarul organizaţiei" @@ -261,7 +264,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Eroare internă a serverului" @@ -563,9 +566,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -583,9 +586,9 @@ msgstr "Vedeți prețurile" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Auto-gazdă Zulip" @@ -595,9 +598,9 @@ msgstr "Auto-gazdă Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Solicitați sponsorizare" @@ -860,51 +863,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Înregistrează-te cu %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Mulțumim pentru înscriere!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Nu ai primit emailul? Putem să il retrimitem." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Verifică pentru orice eventualitate și folderul SPAM" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Nu se poate conecta la Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Actualizările pot fi întârziate." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Reîncerc în curând..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Încearcă acum." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Mesaje" @@ -1152,6 +1155,159 @@ msgstr "Utilizatori obișnuiți" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Bine ai venit pe Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL-ul organizației: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Utilizați contul LDAP pentru a vă conecta" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s pe Zulip: Noile detalii ale organizației tale." + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s pe Zulip: Detaliile noului tău cont" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Te-ai înscris în organizația Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1159,6 +1315,39 @@ msgstr "" msgid "Hi," msgstr "Bună," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Dacă nu ați solicitat această modificare, vă rugăm să ne contactați imediat la %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Dacă nu ai solicitat tu această modificare, te rog contactează-ne imediat la <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1172,23 +1361,10 @@ msgstr "Am primit o solicitare de schimbare a adresei de email pentru contul Zul msgid "Confirm email change" msgstr "Confirmă schimbarea de email" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Dacă nu ați solicitat această modificare, vă rugăm să ne contactați imediat la %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verifică noua ta adresă de email" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Dacă nu ai solicitat tu această modificare, te rog contactează-ne imediat la <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1242,17 +1418,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1357,225 +1522,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Adresa dvs. de e-mail %(email)s are conturi la următoarele organizații Zulip găzduite de %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Bine ai venit pe Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL-ul organizației: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Utilizați contul LDAP pentru a vă conecta" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s pe Zulip: Noile detalii ale organizației tale." - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s pe Zulip: Detaliile noului tău cont" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Te-ai înscris în organizația Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Exemple de subiecte scurte" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Mergi la Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1660,14 +1606,14 @@ msgstr "Această invitație expira în doua zile. Dacă va expira, vei fi nevoit #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1699,21 +1645,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1721,21 +1691,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1778,29 +1748,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nAcest email nu include conținutul mesajelor pentru că ai dezactivat afișarea conținutului mesajelor în notificările prin email.\nVezi %(alert_notif_url)s pentru mai multe detalii.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nNu răspunde acestui email. Acest server Zulip nu este configurat să primeasca emailuri. Ajutor:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Administrează preferințele emailurilor:" @@ -1963,6 +1933,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1991,6 +1969,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Exemple de subiecte scurte" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Mergi la Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2379,7 +2429,7 @@ msgid "Incoming webhooks" msgstr "webhooks care sosesc" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Boți interactivi" @@ -2879,292 +2929,295 @@ msgid "" " " msgstr "\n Poți folosi Aplicatia pentru desktop Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "abonări" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} doar ce s-a înscris pe Zulip. (total: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} a acceptat invitația ta pe Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Ordine de mapare nevalidă" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Id-ul câmpului {id} nu a fost găsit." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Numele implicit de grup al hubului este nevalid '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Numele implicit de grup al hubului este prea lung (limita: {} caractere)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Numele implicit al grupului hubului '{}' conține NULL (0x00) caractere." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Grup hub implicit nevalid {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' este un hub implicit și nu poate fi adăugat la '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Grupul implicit al hubului '{group_name}' deja există" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Hubul '{stream_name}' este deja prezent în grupul implicit al hubului '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Hubul '{stream_name}' nu este prezent în grupul implicit de hub '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Grupul implicit al hubului are deja un nume '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Grupul implicit de hub '{}' deja există" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Pentru a proteja utilizatorii, Zulip limitează numărul de invitații pe care le puteți trimite într-o zi. Pentru că ați atins limita, nu au fost trimise invitații." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Contul dvs. este prea nou pentru a trimite invitații pentru această organizație. Întrebați un administrator al organizației sau un utilizator mai experimentat." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Câteva emailuri nu au fost validate așa că nu am trimis invitațile." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Nu am putut să invităm nici o persoană." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Unele dintre aceste adrese folosesc deja Zulip, așa că nu le-am trimis o invitație. Le-am trimis invitații tuturor celorlalți!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Nimic de schimbat" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "propagate_mode nevalid, fără modificarea subiectului" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Nu pot schimba conținutul mesajului în timp ce schimb hubul" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Widgeturile nu pot fi editate." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} a marcat acest subiect ca rezolvat." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} a marcat acest subiect ca nerezolvat." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Acest subiect a fost mutat în {new_location} de către {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Un mesaj a fost mutat din acest subiect în {new_location} de către {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} mesaje au fost mutate din acest subiect în {new_location} de către {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Acest subiect a fost mutat aici de la {old_location} de către {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} mesaje au fost mutate aici din {old_location} de către {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Modificarea mesajelor este oprită în această organizație" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Nu aveți permisiunea de a edita acest mesaj" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Limita de timp pentru modificarea mesajului a expirat." -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Nu aveți permisiunea de a utiliza mențiuni wildcard în acest flux." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Nu ai permisiunea să muți acest mesaj." -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Nu aveți permisiunea de a muta acest mesaj din cauza lipsei accesului la fluxul său" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Steag nevalid: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Steagul nu poate fi modificat: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Operațiune de marcare a mesajului nevalidă: \"{}" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Mesaj nevalid(e)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Imposibil de redat mesajul" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Se așteaptă exact un hub" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Tip nevalid de date pentru hub" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Tip de date nevalid pentru destinatari" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Lista destinatarilor poate conține emailuri sau ID, dar nu ambele." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Botul tău {bot_identity} a încercat să trimită un mesaj în hubul cu ID {stream_id}, dar nu există nici un hub cu acest ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Botul tău {bot_identity} a încercat să trimită un mesaj în hubul {stream_name}, dar acesta nu există. Apasă [aici]({new_stream_link}) pentru a-l crea." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Botul tău {bot_identity} a încercat să trimită un mesaj în hubul {stream_name}. Hubul există dar nu are abonați." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Subiectele sunt necesare în această organizație" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: Programatorul API a trimis JSON conținut nevalid" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reacția deja există." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Un emoji personalizat cu acest nume deja există." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3178,8 +3231,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3198,18 +3251,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} a schimbat [permisiunile de acces](/help/stream-permissions) pentru acest flux din **{old_policy}** în **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3218,38 +3285,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} a schimbat [permisiunile de postare](/help/stream-sending-policy) pentru acest flux:\n\n* **Permisiuni vechi**: {old_policy}.\n* **Permisiuni noi**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} a redenumit hubul {old_stream_name} la {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Fără descriere." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} modificat descrierea acestui flux." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Descriere veche" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Descriere nouă" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Pentru totdeauna" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Mesajele din acest flux vor fi acum păstrate pentru totdeauna." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3259,56 +3326,59 @@ msgid "" "{summary_line}" msgstr "{user} a modificat [perioada de păstrare a mesajelor](/help/message-retention-policy) pentru acest flux:\n* **Vechea perioadă de păstrare**: {old_retention_period}\n* **Noua perioadă de păstrare**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Nu puteți atașa un submesaj la acest mesaj." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "ID de utilizator nevalid {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Grupul '{}' deja există." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Acest APInu este disponibil pentru incoming webhook bots." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Contul nu este asociat cu acest subdomeniu" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Acest endpoint nu acceptă solicitări de la boți." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Trebuie să fii un administrator de server" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Permisiune insuficientă" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Acest endpoint necesită autorizare HTTP de bază " -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Antet de autorizare nevalid pentru auth basic" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Lipsește antetul autorizației pentru autentificarea de bază" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Boții webhook pot accesa doar webhooks" @@ -3323,95 +3393,101 @@ msgstr "{username} contului a fost dezactivat. Vă rugăm să contactați admini msgid "The password is too weak." msgstr "Parola este prea slabă." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomeniul poate fi lung de 3 sau mai mult. " -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomeniul nu poate începe sau termina cu '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomeniul poate avea litere mici, numere și '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomeniu indisponibil. Te rog alege altul." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Te rog folosește-ți adresa ta reală de email." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Organizația în care vrei să intri cu {email} nu există." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Vă rugăm să solicitați o invitație pentru {email} de la administratorul organizației." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Adresa de email, {email}, nu este între domeniile care sunt permise pentru a crea un cont în această organizație." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Adresele de e-mail conținând + nu sunt permise în această organizație." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Membrii noi nu se pot alătura acestei organizații, deoarece toate licențele Zulip sunt în uz. Contactați persoana care v-a invitat și cereți-i să mărească numărul de licențe, apoi încercați din nou." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Parola nouă" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Confirmare parolă nouă" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Faci prea multe încercări de a te conecta. Încercați din nou în {} secunde sau contactați administratorul organizației pentru ajutor." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Parola a fost dezactivată deoarece este prea slabă. Resetați parola pentru a crea una nouă." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Te rog introdu cel puțin 10 emailuri." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Nu am găsit acea organizație Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Email nevalid '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3475,31 +3551,31 @@ msgstr "Subdomeniile nu pot începe sau termina cu '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domeniul poate avea doar litere, numere, '.' și '-'s." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Timestamp nu trebuie să fie negativ." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Subiectul nu trebuie să conțină octeți nule" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Trebuie să se specifice exact 1 ID de flux pentru mesajele de flux" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Utilizatorul a dezactivat sincronizarea schițelor." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Proiectul nu există" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Deschide Zulip pentru a vedea conținutul spoiler" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Notificări Zulip" @@ -3532,166 +3608,166 @@ msgstr "Are deja un cont." msgid "Account has been deactivated." msgstr "Contul a fost dezactivat." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Emoji-ul '{}' nu există" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Emoji personalizat nevalid." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Nume emoji nevalid." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Acest emoji personalizat a fost dezactivat." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Cod emoji nevalid" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Nume emoji nevalid." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Tip emoji nevalid" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Trebuie să fii un administrator al organizației sau autorul emoji-ului" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Numele emoji-ului lipsește" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Nu pot aloca lista de evenimente" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Deconectat: este necesară autentificarea API sau sesiunea de utilizator" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Hubul '{stream}' nu există" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Hubul cu ID '{stream_id}' nu există" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "proprietarul organizației" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "utilizator" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Nu pot dezactiva singura {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Instrucțiune de includere Markdown nevalidă: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Utilizarea API-ului depășește rata limită" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON malformat" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Trebuie să fie membru in organizaţie" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Trebuie să fii un administrator al organizației " -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Trebuie să fie un proprietar al organizației" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Numele dvs. de utilizator sau parola sunt incorecte" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Contul este dezactivat" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Această organizație a fost dezactivată" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Înregistrarea serviciului de notificare push mobil pentru serverul dvs. a fost dezactivată" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Autentificarea prin parolă este dezactivată în această organizație" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Parola dvs. a fost dezactivată și trebuie resetată" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Cheie API nevalidă" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Cheie API malformată" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Evenimentul '{event_type}' nu este în prezent susținut de webhook-ul {webhook_name} " +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Nu se poate analiza solicitarea: {webhook_name} a generat acest eveniment?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Domeniu nevalid" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Acces interzis" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3699,6 +3775,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reacția deja există." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reacția nu există." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3740,8 +3824,8 @@ msgid "Settings" msgstr "Setări" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Mergi la setări pentru a configura notificările și setarile de afișare." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3753,264 +3837,272 @@ msgid "" "and give it a go!" msgstr "Apasă aici pentru a începe o nouă conversație. Alege un subiect (maxim 2-3 cuvinte) și dă-i drumul!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integration frameworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Integrare continua" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Relații clienți" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Implementare" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Divertisment" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Comunicare" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financiar" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "CAD-CAM" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Diverse" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Managementul proiectului" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productivitate" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Controlul versiunii" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Mesajul nu trebuie să fie gol" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Mesajul nu poate conține biți null" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operator {} nesuportat." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Operator de limitare nevalid: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Lipsește argumentul 'anchor' ." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Ancora nevalidă" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Dacă sunteți nou în Zulip, consultați [Ghidul de început]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Salut și bine ai venit pe Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "De asemenea, vă pot ajuta să vă configurați! Doar faceți clic oriunde pe acest mesaj sau apăsați `r` pentru a răspunde." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Iată câteva mesaje pe care le înțeleg:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Accesați [Setări profil](#settings/profile) pentru a adăuga o [fotografie de profil](/help/change-your-profile-picture) și editați [informațiile de profil](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Accesați [Setări de afișare](#settings/display-settings) pentru a [comutați între temele deschise și întunecate](/help/dark-theme), [alegeți tema emoji preferată](/help/emoji-and-emoticons# change-your-emoji-set), [schimbați-vă limba](/help/change-your-language) și faceți alte modificări experienței dvs. Zulip." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "În Zulip, transmite în flux [determină cine primește un mesaj](/help/streams-and-topics). Sunt similare cu canalele din alte aplicații de chat." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Răsfoiește și abonează-te la fluxuri](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "În Zulip, subiectele [vă spun despre ce este vorba despre un mesaj](/help/streams-and-topics). Sunt subiecte ușoare, foarte asemănătoare cu subiectul unui e-mail." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "[Comenzile rapide de la tastatură] (#keyboard-shortcuts) de la Zulip vă permit să navigați rapid și eficient în aplicație." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Apăsați `?` oricând pentru a vedea o [cheat sheet](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip folosește [Markdown](/help/format-your-message-using-markdown), un format intuitiv pentru **bold**, *italic*, liste cu marcatori și multe altele. Faceți clic [aici](#message-formatting) pentru o foaie de cheat." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Consultați [sfaturile noastre de mesagerie](/help/messaging-tips) pentru a afla despre reacțiile emoji, blocurile de cod și multe altele!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Consultați [Ghidul de început](/help/getting-started-with-zulip) sau răsfoiți [Centrul de ajutor](/help/) pentru a afla mai multe!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Îmi pare rău, nu am înțeles mesajul tău. Vă rugăm să încercați una dintre următoarele comenzi:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Acesta este un hub privat, așa cum indică și iconița lacăt de lânga numele hubului." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Mesajele private sunt vizibile doar membrilor hubului." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Pentru a administra acest hub mergi la [Setările hubului]({stream_settings_url}) și apasă `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Acesta este un mesaj în hubul #**{default_notification_stream_name}** cu subiectul `demonstrație subiect`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Subiectele sunt unelte simple pentru organizarea conversațiilor." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Poți afla mai multe despre subiecte la [Huburi și subiecte]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Acesta este un mesaj din hubul #**{default_notification_stream_name}** cu subiectul `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4025,669 +4117,758 @@ msgstr "JSON nevalid în răspuns" msgid "Invalid response format" msgstr "Format de răspuns nevalid" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Opțiuni GCM nevalide către bouncer: prioritate {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Opțiuni GCM nevalide către bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Tokenul nu există" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Această organizație a dezactivat includerea conținutului mesajelor în notificările push pe mobil" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} a menționat @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} te-a menționat:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} a menționat pe toți:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Utilizator neautorizat pentru această interogare" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' nu mai folosește Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Eroare bounce a notificărilor push: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Nu pot decide între argumentul '{var_name1}' și'{var_name2}' " -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Argument '{var_name}' lipsă" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Valoare greșită pentru '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Sarcină utilă malformată" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argumentul \"{}\" este un JSON invalid." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Securitatea contului Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Doar administratorii organizației pot trimite în acest hub." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Numai administratorii și moderatorii organizației pot trimite mesaje către acest flux." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Oaspeții nu pot trimite la acest flux." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Membrii noi nu pot scrie în acest hub." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Neautorizat sa trimiți în hub '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Te rog adaugă 'hub'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Te rog alege doar: 'hub' sau 'hub_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Numele de hub '{}' este deja folosit." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Nume hub nevalid '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Hub(uri) ({}) inexistente" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Fluxurile publice web nu sunt activate." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Grupul implicit de hub cu id '{}' nu există." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Numele fluxului nu poate fi gol!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Numele hubului este prea lung (limită: {} caractere)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Caracter nevalid în numele fluxului, în poziția {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Subiectul nu poate fi gol!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Caracter nevalid în subiect, în poziția {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "În acest hub nu sunt disponibile date despre abonați" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Nu pot prelua abonații pentru hubul privat" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} nu este boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} nu este o dată" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} nu este dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} nu este float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} este prea mic" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} nu este integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} este prea mare" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} nu este o listă" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} nevalid" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} este prea lung (limit: {max_length} caractere)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} nu este un șir" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Numărul de cuvinte urcate depașesc limita impusă de organizația ta." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Nu am reușit să decodăm imaginea; sigur ai urcat o imagine?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Mărimea imaginii depășește limitele permise." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Imagine animată coruptă." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Format de imagine animat necunoscut." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Grup nevalid" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Nume prea lung!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Nume prea scurt!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Caractere nevalide în nume!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Format nevalid!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Numele este deja folosit!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Nume sau nume de utilizator incorect" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Integrare nevalidă '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Lipsesc parametrii de configurare: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Nevalidă {} valoare {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Date de configurare nevalide!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Tip de bot nevalid" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Tip de interfață nevalidă" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "ID de utilizator nevalid: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Nu există un astfel de bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Nu există un astfel de utilizator" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Utilizator dezactivat" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} nu este un șir" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} nu poate fi gol." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} nevalid" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} este prea lung (limit: {max_length} caractere)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} are lungime incorectă {length}; ar trebui să fie {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} nu este o dată" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} nu este integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} este prea mic" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} este prea mare" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} nu este float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} nu este boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} nu este un cod hex valid" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} nu este o listă" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} trebuie să aibă exact {length} elemente" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} nu este dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "Cheia {key_name} lipsește din {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Argument neașteptat: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} nu este allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} este greșit/ă)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} nu este un URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' nu poate fi gol." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' nu este o opțiune validă pentru '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} nu este un șir sau o listă integer" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} nu este un string sau integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} nu are o lungime" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} lipsește" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Lipsește antetul evenimentului HTTP '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Webhook-ul {} așteaptă timpul în milisecunde." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "În zcommand ar trebui să existe un slash la început." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Comandă inexistentă: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Eroare CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "evenimentele hubului" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Disponibil pe Zulip Cloud Standard. Faceți upgrade pentru acces." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Caractere nevalide în numele emoji" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Expresie regulată greșită: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Eroare de expresie regulată necunoscută" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Caractere nevalabile în limbajul pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Administratori, moderatori, membri și invitați" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Administratori, moderatori și membri" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Administratori și moderatori" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Numai admini" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Nimeni" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Proprietarul organizaţiei" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Administratorul organizației" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderator" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Membru" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Vizitator" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-public" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Public" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Istorie privată, comună" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Istorie privată, protejată" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Istorie publică, protejată" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Toți membrii hubului pot scrie" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Doar administratorii organizației pot posta" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Numai administratorii și moderatorii organizației pot posta" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Numai membrii cu drepturi depline al organizației pot posta" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Emoji unicode" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Emoji personalizat" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Emoji extra Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Utilizatorul cu ID-ul {} este dezactivat" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Utilizatorul cu ID-ul {} este un robot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Lista opțiunilor" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Alege persoana" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Test scurt" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Test lung" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Alege data" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Cont extern" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Adresă IP necunoscută" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "un sistem de operare necunoscut" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Un browser necunoscut" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Lipsește argumentul 'queue_id' " -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Lipsește argumentul 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Un eveniment mai nou decât {event_id} a fost șters!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Evenimentul {event_id} nu a fost în această listă" @@ -4755,89 +4936,123 @@ msgstr "Un câmp cu această etichetă deja există." msgid "Default custom field cannot be updated." msgstr "Câmplul implicit personalizat nu poate fi actualizat." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Endpointul nu este disponibil în producţie." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend nu este activat." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Hotspot necunoscut: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Specifică macar o adresă de email." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Huburi cu id: {} nu există. Nu am trimis invitații." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Nu există această invitație" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Istoria modificărilor unui mesaj este dezactivată în această organizație" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Nu ai permisiuni să ștegi acest mesaj" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "A trecut perioada de timp în care poți modifica acest mesaj" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Mesaj deja șters" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Prea multe mesaje solicitate (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Nici un astfel de subiect '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Lipseste expeditorul" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mirroring nu este permis cu ID-urile de utilizator destinatar" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Mesaj mirrored nevalid" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Mirroring Zephyr nu este permis în această organizație" @@ -4853,27 +5068,28 @@ msgstr "Utilizator deja dezactivat" msgid "User is not muted" msgstr "Utilizatorul nu este dezactivat" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Presence nu este suportat pentru utilizatorii boți." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Nu există date de prezență pentru {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Clientul nu a trecut nici o valoare nouă." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Clientul trebuie să transmită emoji_name dacă transmite fie emoji_code, fie reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Stare nevalidă: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4889,37 +5105,37 @@ msgid "" "emoji_code" msgstr "Cel puțin unul din următoarele argumente trebuie să fie prezente: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reacția nu există." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Limbă nevalidă '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Cel puțin o metodă de autentificare trebuie activată. " -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr " video_chat_provider {} nevalid" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Trebuie să fie o organizație demonstrativă." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Domeniu nevalid: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4931,42 +5147,43 @@ msgstr "Domeniul {domain} este deja parte din organizația ta." msgid "No entry found for domain {domain}." msgstr "Nu am găsit date despre domeniul {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Urca doar un fișier." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Fișierul urcat este mai mare de limita admisă de {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Limita ratei depășită" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Te rugam solicită un export manual la {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "ID exportului de date nevalid" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Export deja șters" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4974,7 +5191,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Urcă doar un icon." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier not found." @@ -4982,107 +5199,100 @@ msgstr "Linkifier not found." msgid "You must upload exactly one logo." msgstr "Urcă doar un logo. " -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Loc de joacă nevalid" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Utilizator neautorizat să execute interogări din partea lui '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Fluxurile private nu pot fi transformate în fluxuri implicite." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Trebuie să treci \"new_description\" sau \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Valoare nevalidă pentru \"op\". Specifică unul din \"add\" sau \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Fluxurile implicite nu pot fi făcute private." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Hubul are deja acest nume!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Nimic de făcut. Specifică cel puțin un \"adaugă\" sau \"șterge\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} s-a abonat la hubul tău {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} te-a abonat la următoarele huburi:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Nu pot accesa hubul ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Poți invita doar utilizatori Zephyr mirroring în huburi private. " -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} a creat următoarele huburi: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} a creat un hub nou {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "huburi noi" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** flux creat de {user_name}. **Descriere:__________:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Proprietate de abonament necunoscută: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Neabonat la acest id de hub {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Json nevalid pentru submesaj" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Nu eești autorizat să vezi acest fișier.

" @@ -5098,97 +5308,108 @@ msgstr "Utilizatorul a dezactivat notificările de tastare pentru mesajele în f msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Nu am găsit fișierul.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Token nevalid" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Nume de fișier nevalid" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Specifică un fișier să îl urcăm" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Poți urca un fișier odată" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Nu sunt date noi" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Utilizatorul {user_id} este deja membru în acest grup" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Nu este nici un membru '{}' în acest grup" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Modifcarea avatarului este interzisă în această organizație. " -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Modificarea adresei de email este interzisă de această organizație." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "default_language nevalidă" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Sunet de notificare nevalid '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Perioada de lot de e-mail nevalidă: {} secunde" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Parola ta Zulip este administrata în LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Parolă greșită!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Ai făcut prea multe încercări! Reîncearcă în {} secunde." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Noua parolă e prea nesigură!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Urcă doar un avatar." @@ -5235,6 +5456,10 @@ msgstr "Nume nevalid de bot încorporat" msgid "Username already in use" msgstr "Nume de utilizator deja folosit de altcineva" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5245,8 +5470,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Adrese de email dispozabile nu sunt permise în aceasta organizație" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Email '{}' deja folosit" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5264,27 +5490,27 @@ msgstr "Identificator de sesiune Zoom nevalid" msgid "Invalid Zoom credentials" msgstr "Credențiale Zoom nevalide" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Am eșuat apelul Zoom" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton nu este configurat." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Semnătură nevalidă." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Eroare la conectarea la serverul BigBlueButton." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Eroare la autentificare pe serverul BigBlueButton." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Serverul BigBlueButton a returnat o eroare neașteptată." @@ -5304,28 +5530,28 @@ msgstr "Cache Kerberos nevalid" msgid "We were unable to set up mirroring for you" msgstr "Nu am reușit să configurăm oglindirea pentru dvs" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Încărcare nevalidă" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Solicitare webhook necunoscută" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Subiectul nu poate fi gol" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Conținutul nu poate fi gol. " -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Input JSON malformat" @@ -5344,7 +5570,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5352,19 +5578,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Imposibil de gestionat Pivotal payload" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Eroare: parametrul channels_map_to_topics altul decât 0 sau 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Mesaj din Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Acțiune webhook WordPress necunoscută: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5381,47 +5608,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Trebuie validat cu o cheie API validă Zulip" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "UUID nevalid" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Tip de token nevalid" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} este un hostname invalid" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Lipsă user_id sau user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Proprietate nevalidă {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Datele sunt în dezordine." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Date nevalide." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Trebuie să vă resetați parola." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Lipsește parametrul id_token" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "OTP nevalid" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Nu pot folosi mobile_flow_otp și desktop_flow_otp împreună." diff --git a/locale/ro/translations.json b/locale/ro/translations.json index f36ceb7d94..65f99f9a39 100644 --- a/locale/ro/translations.json +++ b/locale/ro/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(ascuns)", "(no description)": "(fară participare)", "(no topic)": "(nici un subiect)", + "(or )": "", "(you)": "(tu)", "({message_retention_days} days)": "({message_retention_days} zile)", "/dark (Switch to the dark theme)": "/dark (Comutați la tema întunecată)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} nu este abonat la acest flux. Nu vor fi notificați decât dacă vă abonați la ele.", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "Abonati-va", - "Click here to learn about exporting private streams and messages.": "Click aici pentru a afla despre exportul fluxurilor și mesajelor private.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Modernizare pentru mai mult spatiu.", " to add a new line": "pentru a adăuga o nouă linie", " to send": "a trimite", @@ -82,15 +83,18 @@ "Add alert word": "Adaugă un cuvânt alertă", "Add all users": "", "Add another user...": "Adaugă un alt utilizator...", + "Add audio call": "", "Add code playground": "Adăugați un loc de joacă cu coduri", + "Add default streams": "", + "Add email": "", "Add emoji": "Adaugă emoticon", "Add emoji reaction": "Reacționează cu emoji", "Add extra emoji for members of the {realm_name} organization.": "Adăugați emoji suplimentare pentru membrii organizației {realm_name}.", "Add global time": "Adăugați ora globală", "Add linkifier": "Adaugă linkifier", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Adăugați membru...", - "Add new default stream": "Adaugă un hub implicit nou", "Add new user group": "", "Add one or more users": "Adaugă unul sau mai multi utilizatori", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Adăugați abonați. Utilizați grupul de utilizatori sau #streamname pentru a adăuga în bloc abonați.", "Add task": "Adaugă sarcină", "Add video call": "Adauga video-conferință", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Adăugată cu succes!", "Added successfully.": "", "Administrator": "Administrator", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Toate", "All direct messages": "", + "All groups": "", "All messages": "Toate mesajele", "All messages including muted streams": "Toate mesajele inclusiv huburile fără alertă sonoră", "All streams": "Toate huburile", @@ -136,9 +142,11 @@ "Allow subdomains": "Permite subdomenii", "Allowed domains": "Domeniile permise", "Allowed domains: {domains}": "Domenii permise: {domains}", + "Already members:": "", "Already not subscribed.": "Deja nu te-ai abonat.", "Already subscribed to {stream}": "V-ați abonat deja la {stream}", "Already subscribed users:": "Utilizatori deja abonați:", + "Already subscribed.": "", "Always": "Mereu", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "O cheie API poate fi utilizată pentru a accesa programatic un cont Zulip. Oricine are acces la cheia API are capacitatea de a-ți citi mesajele, de a trimite mesaje în numele tău și, în caz contrar, te va impune pe Zulip, așa că ar trebui să păzești cheia API la fel de atentă în timp ce îți păstrezi parola.
Vă recomandăm să creați roboți și să folosiți conturile și cheile API ale bots pentru a accesa API-ul Zulip, cu excepția cazului în care sarcina necesită acces la contul dvs. ", "An hour ago": "Acum o oră", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Arhivați fluxul", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Sigur doriți să creați fluxul „'''{stream_name}'''' și să vă abonați la acesta {count} utilizatori?", "Are you sure you want to deactivate this organization?": "Sigur doriți să dezactivați această organizație?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Sigur doriți să retrimiteți invitația către ?", "Are you sure you want to revoke the invitation to {email}?": "Sigur doriți să revocați invitația către {email} ?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Sigur doriți să revocați acest link de invitație creat de {referred_by} ?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Sigur doriți să anulați stea pentru toate mesajele ? Această acțiune nu poate fi anulată.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Sigur doriți să anulați stea pentru toate mesajele marcate cu stea? Această acțiune nu poate fi anulată.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Modifcarea avatarului este interzisă în această organizație. ", "Avatar from Gravatar": "Avatar de la Gravatar", "Back to streams": "Înapoi la fluxuri", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Facturare", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Tipul botului", "Bots": "Boți", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "Răsfoiți fluxuri", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Afacere", "Busy": "Ocupat", "By deactivating your account, you will be logged out immediately.": "Prin dezactivarea contului, veți fi deconectat imediat.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Click aici pentru a dezvălui.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Faceți clic în afara casetei de introducere pentru a salva. Vom anunța automat pe oricine a fost adăugat sau eliminat.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Închide", "Close modal": "Închidere modal", @@ -232,7 +248,7 @@ "Commuting": "Naveta", "Compact": "", "Complete": "Complet", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Completeaza profilul organizatiei pentru a marca și explica scopul acestei organizații Zulip.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Compune mesaj", "Compose your message here": "Compune mesajul tău aici", "Compose your message here...": "Compune mesajul tău aici...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Convertește emoji inainte de a le trimite (:) devine 😃)", "Cookie Bot": "Cookie Bot", "Copied!": "Copiat!", + "Copy URL": "", "Copy address": "", "Copy and close": "Copiază și închide", "Copy code": "Copiați codul", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Personalizat", + "Custom URL": "", "Custom emoji": "Emoji personalizat", "Custom language: {query}": "Limbă personalizată: {query}", "Custom linkifier added!": "S-a adăugat linker personalizat!", @@ -302,10 +320,12 @@ "Deactivated": "Dezactivat", "Deactivated users": "Utilizatorii dezactivați", "December": "Decembrie", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Implicit este {language}. Utilizați „text” pentru a dezactiva evidențierea.", "Default language for code blocks": "Limba implicita pentru blocurile de cod:", "Default streams": "Huburi implicite", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Setarile implicite pentru utilizatori", "Default view": "Vedere standard", @@ -314,12 +334,14 @@ "Delete": "Șterge", "Delete alert word": "Șterge cuvântul alertă", "Delete all drafts": "Ștergeți toate schițele", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Șterge schița", "Delete file": "Șterge fișierul", "Delete file?": "", + "Delete group": "", "Delete icon": "Șterge icoana", "Delete linkifier?": "", "Delete logo": "Șterge logo", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "În funcție de marimea organizației tale, un export poate dura câteva secunde sau o oră.", "Deprecation notice": "Aviz de depreciere", "Description": "Descriere", + "Deselect draft": "", "Desktop": "Desktop", "Desktop & mobile apps": "Aplicații desktop și mobile", "Desktop message notifications": "Notificări de mesaje de pe desktop", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Documentaţie detaliată despre formatarea mesajelor", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Dezactivat", "Discard": "Renunță", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Afișează setările", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domeniul", "Don’t allow disposable email addresses": "Nu permite adrese de email dispozabile", "Download": "Descarcă", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "Editați linkfiere", "Edit message": "Modifică mesajul", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Modifică schița selectată", "Edit selected message or view source": "", "Edit status": "Editați starea", @@ -398,7 +423,6 @@ "Edit your last message": "Modifică ultimul tău mesaj", "Edit your profile": "Modifică profilul tău", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Editat ({last_edit_timestr})", "Edited by {full_name}": "Editat de {full_name}", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Tip de cont extern", "External link": "Link extern", "Failed": "Am eșuat", + "Failed adding one or more streams.": "", "Failed to create video call.": "Inițiere apel video eșuată.", "Failed to generate preview": "Am eșuat să generez previzualizare", "Failed to upload %'{file}'": "Nu s-a putut încărca %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Filtrează exporturile", "Filter groups": "", "Filter invites": "Filtrează invitațiile", - "Filter languages": "Filtrează limbajele", "Filter linkifiers": "Filtrează linkifiers", "Filter members": "", "Filter muted users": "Filtrați utilizatorii dezactivați", - "Filter roles": "", "Filter streams": "Filtrează huburile", "Filter subscribers": "", "Filter topics": "Filtrați subiectele", @@ -500,6 +523,9 @@ "First message": "Primul mesaj", "First time? Read our guidelines for creating and naming streams.": "Prima data? Citiți-ne instrucțiuni pentru crearea și denumirea fluxurilor.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "atribuire GIPHY", "GIPHY integration": "integrarea GIPHY", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Generează link pentru invitație ", "Generate new API key": "Generează o cheie API nouă ", @@ -542,14 +569,18 @@ "High contrast mode": "Mod de contrast ridicat", "Hint": "Sugestie", "Hint (up to 80 characters)": "Sugestie (până la 80 caractere)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Oameni", "Idle": "Inactiv", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Utilizatori dezactivați ignorați:", "Image": "Imagine", "In a meeting": "Într-o întâlnire", "Inactive": "", "Inactive bots": "Boți inactivi", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Includeți conținutul mesajului în e-mailurile de notificare", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Hook-urile primite doar pot trimite mesaje.", "Initiate a search": "Inițiază o căutare", "Insert new line": "Inserează o linie nouă", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integrări", "Interface": "Interfață", "Invalid URL": "URL nevalid", @@ -581,6 +614,8 @@ "Inviting...": "Invit...", "Italic": "Cursiv", "January": "Ianuarie", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Înscris la", @@ -599,8 +634,10 @@ "Last 30 days": "Ultimele 30 de zile", "Last 6 months": "Ultimele 6 luni", "Last active": "Ultima activitate", + "Last edited {last_edit_timestr}": "", "Last message": "Ultimul mesaj", "Last modified": "Modificat ultima dată", + "Last moved {last_edit_timestr}": "", "Learn more": "Aflați mai multe", "Learn more about mentions here.": "Aflați mai multe despre mențiuni Aici .", "Learn more about starring messages here.": "Aflați mai multe despre marcarea cu stea a mesajelor Aici .", @@ -623,6 +660,7 @@ "Log out": "Deconectare", "Looking for our integrations or API documentation?": "În căutarea noastră integrări sau API documentație?", "MOVED": "MUTAT", + "Main menu": "", "Manage bot": "", "Manage streams": "Administrează huburile", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Menționat în", "Mentions": "Menționări", - "Menu": "Meniu", "Menus": "Meniuri", "Message #{stream_name}": "Mesaj #{stream_name}", "Message #{stream_name} > {topic_name}": "Mesaj #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Mesaj {recipient_names}", "Message {recipient_name} ({recipient_status})": "Mesaj {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Mobil", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Mută subiectul", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Trebuie să fie invitat de un abonat; noii abonați pot vedea mesajele trimise numai după ce se alătură; ascuns utilizatorilor care nu sunt administratori", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Trebuie să fie invitat de un abonat; noii abonați pot vizualiza istoricul complet al mesajelor; ascuns pentru utilizatorii care nu sunt administratori", + "Mute": "", "Mute stream": "Marchează hubul - fără alertă sonoră", "Mute this user": "Dezactivați sunetul acestui utilizator", "Mute topic": "Marchează subiectul - fără alertă sonoră", @@ -734,38 +773,42 @@ "New password is too weak": "Parola nouă este prea slabă", "New stream announcements": "", "New stream message": "Mesaj nou în hub", + "New stream notifications": "", "New task": "Sarcină nouă", "New topic": "Subiect nou", "New user announcements": "", + "New user notifications": "", "Next message": "Mesajul următor", "Next unread direct message": "", "Next unread topic": "Următorul subiect necitit", - "Next week": "Săptămâna viitoare", "No bots match your current filter.": "Nici un bot nu corespunde filtrului curent.", + "No conversations match your filters.": "", "No custom emoji.": "Nici un emoji personalizat.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Nici un hub implicit nu corespunde filtrului curent.", "No description.": "Fără descriere.", + "No drafts selected": "", "No drafts.": "Fără schițe.", "No exports.": "Fără exporturi.", "No invites match your current filter.": "Nicio invitație nu se potrivește cu filtrul curent.", "No language set": "Nu este setată limba", "No linkifiers set.": "Nu sunt setate linkifiers", + "No matching results": "", "No matching users.": "Nu există utilizatori care se potrivesc.", "No one has read this message yet.": "", "No owner": "Fără autor", "No playgrounds configured.": "Nu au fost configurate locuri de joacă.", "No restrictions": "Fără restricții", "No scheduled messages.": "", - "No search results": "Căutare fără nici un rezultat", "No search results.": "", "No stream subscriptions.": "Fără abonamente la stream.", "No streams": "Fără fluxuri", "No topics are marked as resolved.": "Niciun subiect nu este marcat ca rezolvat.", - "No topics match your current filter.": "Nu sunt subiecte care să se potrivească filtrul curent.", "No user group subscriptions.": "Fără abonamente la grupuri de utilizatori.", "No user groups": "", "No user to subscribe.": "Nici un utilizator de abonat.", "No users match your current filter.": "Nici un utilizator nu se potrivște cu filtrul tău curent.", + "No users to add.": "", "No, I'll catch up.": "Nu, vă ajung din urmă.", "Nobody": "Nimeni", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Noiembrie", + "Numbered list": "", "October": "Octombrie", "Old password": "Parola veche", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Numai membrii din hub pot adăuga utilizatori într-un hub privat", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Deschide", "Open message menu": "Deschide mesajul meniu", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Apasă > pentru lista subiectelor", "Prevent users from changing their avatar": "Împiedică utilizatorii să își schimbe avatarul", "Prevent users from changing their email address": "Împiedică utilizatorii să își schimbe emailul", @@ -869,6 +915,7 @@ "Previous message": "Mesaj anterior", "Privacy": "Confidențialitate", "Privacy settings": "Setările de confidențialitate", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Istorie privată, protejată", "Private, shared history": "Istoric privat, partajat", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Reactivează botul", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Salvat ca schiță", "Saved. Please reload for the change to take effect.": "Salvat. Vă rog reîncărcați pentru ca modificarea să intre în vigoare.", "Saving": "Salvez", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Vezi cum se configurează emailul.", "Select a stream": "Selectează un hub", "Select a stream below or change topic name.": "Selectează un flux de mai jos sau schimbă numele subiectului.", - "Select date and time": "Selectează data și ora", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Selectați emoji", "Select language": "", + "Select stream": "", "Send": "Trimite", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Trimite-mi emailuri cu rezumate când sunt plecat", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Afișează previzualizări ale imaginilor încărcate și legate", "Show starred message count": "Arată numărul mesajelor cu stea", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Arată/schimbă cheia ta API", "Sign up": "Înscriere", "Silent mentions do not trigger notifications.": "Mențiunile silențioase nu declanșează notificări.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Sortează după traficul estimat săptămânal", "Sort by name": "Sortează după nume", "Sort by number of subscribers": "Sortează după numarul abonaților", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Pune stea", "Star selected message": "Mesaj selectat cu o stea", @@ -1024,8 +1080,10 @@ "Subscribe": "Abonează", "Subscribe them": "Abonați-le la ele", "Subscribe to/unsubscribe from selected stream": "Abonează-te / dezabonează-te de la hubul selectat", + "Subscribe {full_name} to streams": "", "Subscribed": "Abonat", "Subscribed streams": "Fluxuri abonate", + "Subscribed successfully!": "Abonat cu succes!", "Subscriber count": "Numarul abonaților", "Subscribers": "Abonați", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Nu există cuvinte de alertă curente.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Acest server Zulip rulează o versiune veche și ar trebui să fie actualizat.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Așa arată o notificare Zulip.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Acest mesaj a fost ascuns deoarece ați dezactivat sunetul expeditorului.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Fus orar", "Time's up!": "Gata, timpul s-a terminat!", "Tip: You can also send \"/poll Some question\"": "Sugestie: Scrie \"/poll Numele chestionarului tău aici\" pentru a face un chestionar", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Pentru a adăuga evidențierea de sintaxă la un bloc de cod cu mai multe linii, adăugați prima limbă Pygments nume scurt după primul set de back-tick-uri. De asemenea, puteți face un bloc de cod prin indentarea fiecărei linii cu 4 spații.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Pentru a invita utilizatori, vă rugăm mărirea numărului de licențe sau dezactivați utilizatorii inactivi .", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Azi", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Comutare abonament", "Toggle the gear menu": "Comută meniul rotiță", "Toggle topic mute": "Comută subiectul - fără alertă sonoră", - "Tomorrow": "Mâine", "Tomorrow at {time}": "", "Topic": "Subiect", "Topic muted": "Subiect fără alertă sonoră", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Autentificare în doua etape", "Type": "Tip", + "URL": "", + "URL for your integration": "", "URL pattern": "Model URL", - "URL prefix": "Prefix URL", "URL template": "", "USERS": "UTILIZATORI", "Uncheck all": "Deselectează tot", @@ -1139,6 +1197,7 @@ "Unmute this user": "Activați sunetul acestui utilizator", "Unmute topic": "Marchează subiect cu alertă sonoră", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Desprinde hubul de sus", "Unread": "Necitit", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Vezi schițele", - "View edit history": "Vezi istoria modificărilor", + "View edit and move history": "", "View file": "Vezi fișierul", "View in playground": "Vedere în locul de joacă", "View in {name}": "Vedeți în {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web-public", "Wednesday": "Miercuri", "Week of {date}": "Săptămâna {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Bine ai revenit! Tu ai {unread_msgs_count} mesaje necitite. Doriți să le marcați pe toate ca citite?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Dacă menționările wildcard precum @all sunt tratate ca menționări în scopul notificărilor.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Cine poate accesa hubul?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Cine poate crea și administra grupuri?", "Who can create private streams": "Cine poate crea fluxuri private", "Who can create public streams": "Cine poate crea fluxuri publice", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Cine poate crea fluxuri publice web", "Who can delete their own messages": "Cine își poate șterge propriile mesaje", - "Who can invite users to this organization": "Cine poate invita utilizatori la această organizație", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Cine poate publica în huburi?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Cine poate folosi @all/@everyone menționează în fluxuri mari", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Tu și", "You and {display_reply_to}": "Tu și {display_reply_to}", "You and {recipients}": "Tu și {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Acum nu ești abonat la acest hub", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Folosiți o versiune veche a aplicației Zulip pentru desktop cu erori de securitate cunoscute.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Nu ești abonat la acest hub și nimeni nu a vorbit încă despre asta!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "De asemenea, puteți face Mese cu asta Sintaxa tabelului Markdown-ish .", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Nu aveți permisiunea de a utiliza mențiuni wildcard în acest flux.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Și vezi așa", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Ai dezactivat sunetul .", + "You have muted this topic": "", "You have no active bots.": "Nu ai boți activi.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Încă nu ați dezactivat sunetul niciunui utilizator.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Nu ai încărcat nici un fișier până acum.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Încă nu ai fost menționat!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Trebuie sa fi un administrator al organizației sa poți crea un hub fără să te abonezi la el.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Rulează Zephyr mirroring pentru a putea trimite mesaje!", "You searched for:": "Ai căutat:", "You subscribed to stream ": "", "You type": "Tastezi asta", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Nu ești abonat la acest hub. Nu vei fi notificat când alți utilizatori vor răspunde mesajului tău.", "Your API key:": "Cheia ta API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip trebuie să trimită e-mailuri pentru a confirma adresele utilizatorilor și pentru a trimite notificări.", "Zulip needs your permission to enable desktop notifications.": "Zulip are nevoie de permisiunea ta activați notificările desktop.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Traducerile lui Zulip sunt contribuite de comunitatea noastră uimitoare de traducători voluntari. Dacă doriți să ajutați, vedeți Ghid de traducere Zulip .", "[Configure]": "[Configurează]", - "[Disable]": "[Dezactivează]", - "[More…]": "[Mai mult…]", "[Quoting…]": "[Citat...]", - "[Unset]": "[Nesetată]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "și {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "în 1 oră", - "in 20 minutes": "în 20 minute", - "in 3 hours": "în 3 ore", "invisible mode off": "", "leafy green vegetable": "legumă verde cu frunze", "marketing": "CAD-CAM", "more conversations": "", "more topics": "mai multe subiecte", - "or": "sau", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} few {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "acum {days_old} zile", "{full_name} is typing…": "{full_name} tastează...", "{hours} hours ago": "{hours} ore în urmă", - "{items_selected} selected": "{items_selected} selectat", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} min pentru a edita", "{minutes} minutes ago": "{minutes} minute în urmă", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} few {} other {}}", "{seconds} sec to edit": "{seconds} sec pentru a edita", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [a spus]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} a reacționat cu {emoji_name}" diff --git a/locale/ru/LC_MESSAGES/django.po b/locale/ru/LC_MESSAGES/django.po index 476d1ed0e9..b9c1cb186c 100644 --- a/locale/ru/LC_MESSAGES/django.po +++ b/locale/ru/LC_MESSAGES/django.po @@ -25,9 +25,9 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" -"Last-Translator: Sergey Korablin , 2018-2023\n" +"Last-Translator: Lev Shereshevsky, 2022-2023\n" "Language-Team: Russian (http://app.transifex.com/zulip/zulip/language/ru/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -35,46 +35,47 @@ msgstr "" "Language: ru\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Не разрешено для гостевых пользователей" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Недопустимая организация" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Открытые каналы" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Закрытые каналы" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Личные сообщения" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Группировать личные сообщения" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Неизвестное название графика: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "Неизвестное название графика: {chart_name}" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Начальное время больше конечного. Начало: {start}, конец: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Данные аналитики недоступны. Обратитесь к администратору сервера." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Неверные параметры" @@ -94,7 +95,7 @@ msgid "" "the number of licenses]({billing_page_link}) or [deactivate inactive " "users]({deactivate_user_help_page_link}) to allow more than one user to " "join." -msgstr "В вашей организации осталась только одна лицензия Zulip. Вы можете, [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем одному пользователю. " +msgstr "В вашей организации осталась только одна лицензия Zulip. Вы можете [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем одному пользователю. " #: corporate/lib/registration.py:41 #, python-brace-format @@ -103,7 +104,7 @@ msgid "" "the number of licenses]({billing_page_link}) or [deactivate inactive " "users]({deactivate_user_help_page_link}) to allow more than two users to " "join." -msgstr "В вашей организации осталась только две лицензии Zulip. Вы можете, [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем двум пользователям. " +msgstr "В вашей организации остались только две лицензии Zulip. Вы можете [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем двум пользователям. " #: corporate/lib/registration.py:46 #, python-brace-format @@ -112,7 +113,7 @@ msgid "" " the number of licenses]({billing_page_link}) or [deactivate inactive " "users]({deactivate_user_help_page_link}) to allow more than three users to " "join." -msgstr "В вашей организации осталась только три лицензии Zulip. Вы можете, [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем трем пользователям. " +msgstr "В вашей организации остались только три лицензии Zulip. Вы можете [увеличить количество лицензий] ({billing_page_link}) или [отключить неактивных пользователей] ({deactivate_user_help_page_link}), чтобы разрешить присоединиться более чем трем пользователям. " #: corporate/lib/registration.py:57 #, python-brace-format @@ -132,32 +133,34 @@ msgstr "Все лицензии Zulip для этой организации у msgid "" "Your organization does not have enough unused Zulip licenses to invite " "{num_invites} users." -msgstr "У вашей организации недостаточно свободных лицензий Zulip чтобы пригласить {num_invites} пользователей. " +msgstr "У вашей организации недостаточно свободных лицензий Zulip, чтобы пригласить {num_invites} пользователей. " #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Вам нужно выставить счет как минимум {} пользователям." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "Счет нужно запрашивать не менее чем на {min_licenses} пользователей." -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Счета на более чем {} лицензий не могут быть обработаны с этой страницы. Пожалуйста, обратитесь к {}, чтобы завершить обновление." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "Счета на более чем {max_licenses} лицензий не могут быть обработаны на этой странице. Для завершения апгрейда, пожалуйста, свяжитесь с {email}." -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Что-то пошло не так. Пожалуйста, обратитесь к {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Что-то пошло не так. Пожалуйста, перезагрузите страницу." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Что-то пошло не так. Пожалуйста, подождите несколько секунд и попробуйте еще раз." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -167,7 +170,7 @@ msgstr "Запрос вашей организации на спонсируем #: corporate/views/billing_page.py:45 msgid "No payment method on file" -msgstr "Нет способа оплаты на файле" +msgstr "Не указан способ оплаты " #: corporate/views/billing_page.py:48 #, python-brace-format @@ -189,7 +192,7 @@ msgstr "Невозможно обновить план. Тарифный пла msgid "Unable to update the plan. The plan has ended." msgstr "Невозможно обновить план. Тарифный план закончился." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -205,14 +208,14 @@ msgstr "Ваш план уже включает {licenses} лицензий в msgid "You cannot decrease the licenses in the current billing period." msgstr "Вы не можете уменьшить количество лицензий в текущем расчетном периоде. " -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Ваш план уже запланирован к продлению с использованием лицензий {licenses_at_next_renewal}." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Ничего не изменилось." @@ -222,9 +225,9 @@ msgstr "У этой организации нет клиентов!" #: corporate/views/event_status.py:34 msgid "Session not found" -msgstr "Сессия не найдена" +msgstr "Сеанс не найден" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Нужно быть администратором, выставляющим счета, либо владельцем организации" @@ -274,7 +277,7 @@ msgid "" msgstr "\n Если эта ошибка непредвиденная, вы можете\n связаться с поддержкой.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Внутренняя ошибка сервера" @@ -495,11 +498,11 @@ msgstr "\n Как бы то ни было, пишите на #: templates/confirmation/link_expired.html:4 msgid "Confirmation link expired or deactivated" -msgstr "Срок действия ссылки истек или она деактивирована" +msgstr "Срок действия ссылки истек или она отозвана" #: templates/confirmation/link_expired.html:14 msgid "Whoops. The confirmation link has expired or been deactivated." -msgstr "Ой. Срок действия ссылки подтверждения истек или она была деактивирована." +msgstr "Ой. Срок действия ссылки подтверждения истек или она была отозвана." #: templates/confirmation/link_expired.html:15 msgid "Please contact your organization administrator for a new link." @@ -567,7 +570,7 @@ msgstr "Присоединиться как участник" #: templates/corporate/event_status.html:5 msgid "Billing status" -msgstr "Статус платежа" +msgstr "Состояние оплаты" #: templates/corporate/for/business.html:33 #: templates/corporate/for/communities.html:34 @@ -576,9 +579,9 @@ msgstr "Статус платежа" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -596,9 +599,9 @@ msgstr "Показать цены" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Самостоятельный хостинг Zulip" @@ -608,9 +611,9 @@ msgstr "Самостоятельный хостинг Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Запросить спонсорство" @@ -702,7 +705,7 @@ msgstr "Zulip для бизнеса" #: templates/corporate/sponsorship.html:24 msgid "Leave blank if your organization does not have a website." -msgstr "Оставьте пустым если у вашей организации нет веб-сайта." +msgstr "Оставьте пустым, если у вашей организации нет веб-сайта." #: templates/corporate/sponsorship.html:32 #: templates/corporate/upgrade.html:158 templates/corporate/upgrade.html:223 @@ -711,7 +714,7 @@ msgstr "Преобразуйте демонстрационную организ #: templates/corporate/support_request.html:7 templates/zerver/footer.html:43 msgid "Contact support" -msgstr "Контактировать поддержку" +msgstr "Обратиться в службу поддержки" #: templates/corporate/support_request.html:15 msgid "From" @@ -841,7 +844,7 @@ msgstr "Адрес эл. почты" msgid "" "I agree to the Terms of Service." -msgstr "Я согласен с условиями исрользования." +msgstr "Я соглашаюсь с условиями исрользования." #: templates/zerver/accounts_accept_terms.html:64 msgid "Continue" @@ -873,51 +876,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Зарегистрируйтесь с помощью %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Подтвердите ваш адрес электронной почты" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Спасибо за регистрацию!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Проверьте вашу электронную почту (%(email)s), чтобы мы могли начать работу." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "Для завершения регистрации проверьте почтовый ящик (%(email)s) на наличие проверочного письма от Zulip." #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Все еще не получили письмо? Мы можем выслать его снова" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "На всякий случай, проверьте вашу папку \"Спам\"." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Если это сообщение не исчезнет, попробуйте перезагрузить страницу." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "Если вы не нашли проверочное письмо ни во входящих сообщениях, ни в спаме, мы можем его отправить повторно." -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "Если это сообщение не пропадает, попробуйте перезагрузить страницу." + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "Сбой загрузки Zulip. Попробуйте перезагрузить страницу." + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Невозможно подключится к Zulip." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Обновления могут задержаться." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Скоро попробуем снова..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Обновить сейчас." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Сообщения" @@ -938,7 +941,7 @@ msgid "" " you probably got the address wrong. If you got stuck here while trying\n" " to log in, this is most likely a server bug or misconfiguration.\n" " " -msgstr "\n Похоже, вы оказались здесь случайно. Этот сайт\n предназначен для промежуточного шага в процессе аутентификации\n и не должен быть доступен вручную. Если бы вы пришли сюда прямо,\n вы, наверное, ошиблись адресом. Если вы застряли здесь, пытаясь\n войти, это, скорее всего, ошибка сервера или неправильная конфигурация.\n " +msgstr "\n Похоже, вы оказались здесь случайно. Этот сайт\n предназначен для промежуточного шага в процессе аутентификации\n и не должен быть доступен вручную. Если вы пришли сюда напрямую,\n вы, наверное, ошиблись адресом. Если вы застряли здесь, пытаясь\n войти, это, скорее всего, ошибка сервера или неправильная конфигурация.\n " #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 @@ -977,7 +980,7 @@ msgid "" "You can also change this setting after you join." -msgstr "Вы так же сможете изменить этот параметр после присоединения." +msgstr "Вы также сможете изменить этот параметр после присоединения." #: templates/zerver/change_email_address_visibility_modal.html:26 msgid "Cancel" @@ -1006,7 +1009,7 @@ msgid "" " organization first. Please use EmailAuthBackend to create\n" " your organization and then try again.\n" " " -msgstr "\n Вы пытаетесь войти с помощью LDAP, предварительно\n не создав организацию. Используйте EmailAuthBackend,\n чтобы создать свою организацию, а затем повторите снова.\n " +msgstr "\n Вы пытаетесь войти с помощью LDAP, не создав \n перед этим организацию. Используйте EmailAuthBackend,\n чтобы создать свою организацию, а затем повторите попытку.\n " #: templates/zerver/confirm_continue_registration.html:4 msgid "Account not found" @@ -1165,6 +1168,159 @@ msgstr "Обычные пользователи" msgid "Digest" msgstr "Дайджест" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Вы создали новую демо-организацию Zulip. Эта организация будет\n автоматически удалена через 30 дней. Узнайте подробнее\n о демо-организациях здесь." + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Вы создали новую организацию Zulip:\n %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Добро пожаловать в Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "Вы подключились к организации Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "Вам будет необходима следующая информация, когда будете подключаться через браузер, мобильные и компьютерные приложения:" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL организации: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Ваше имя пользователя: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Для входа в систему используйте вашу учетную запись LDAP" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "Адрес электронной почты вашей учетной записи: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "К организации" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "Если вы новичок в Zulip, посмотрите наше руководство по началу работы!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "У нас также имеется руководство по настройке своей организации Zulip." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s на Zulip: подробности вашей новой организации" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s на Zulip: подробности вашей новой учетной записи" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "Вы создали новую демо-организацию Zulip. Эта организация будет автоматически удалена через 30 дней. Узнайте подробнее о демо-организациях здесь: %(demo_organizations_help_link)s!" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Вы создали новую организацию Zulip: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Вы подключились к организации Zulip %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "Вам будет необходима следующая информация, когда будете подключаться через браузер, мобильные и компьютерные приложения (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "Если вы новичок в Zulip, посмотрите наше руководство по началу работы (%(getting_user_started_link)s)!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "У нас также имеется руководство для настройки вашей организации (%(getting_organization_started_link)s)." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "Есть вопросы? Свяжитесь с нами по %(support_email)s — мы с радостью поможем!" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "Если у вас есть вопросы, пожалуйста свяжитесь с администраторами сервера Zulip по %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1172,6 +1328,39 @@ msgstr "Дайджест" msgid "Hi," msgstr "Привет," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "Мы получили запрос на добавление адреса %(new_email)s к вашей учетной записи демо-организации %(realm_uri)s. Для подтверждения данного изменения и настройки пароля для этой учетной записи нажмите ниже:" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "Подтвердить и задать пароль" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Если вы не запрашивали этого изменения, пожалуйста, немедленно свяжитесь с нами через %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "Проверьте новый адрес электронной почты для вашей демо-организации Zulip" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Если вы не запрашивали данного изменения, пожалуйста, немедленно свяжитесь с нами по <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1185,23 +1374,10 @@ msgstr "Мы получили запрос на изменение адреса msgid "Confirm email change" msgstr "Подтвердить изменение адреса электронной почты" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Если вы не запрашивали этого изменения, пожалуйста, немедленно свяжитесь с нами через %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Подтвердите ваш новый адрес электронной почты" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Если вы не запрашивали данного изменения, пожалуйста, немедленно свяжитесь с нами по <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1255,17 +1431,6 @@ msgid "" "— we'd love to help!" msgstr "Есть вопросы или хотите поделиться отзывом? Свяжитесь с нами по %(support_email)s — мы с радостью поможем!" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "Если у вас есть вопросы, пожалуйста свяжитесь с администраторами сервера Zulip по %(support_email)s." - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1281,7 +1446,7 @@ msgstr "Отписаться от рекламных писем" msgid "" "\n" "Your Zulip account on %(realm_uri)s has been deactivated, and you will no longer be able to log in.\n" -msgstr "\nВаша учетная запись Zulip в %(realm_uri)s деактивирована и вы больше не сможете войти.\n" +msgstr "\nВаша учетная запись Zulip в %(realm_uri)s отключена и вы больше не сможете войти.\n" #: templates/zerver/emails/deactivate.html:15 #: templates/zerver/emails/deactivate.txt:6 @@ -1298,7 +1463,7 @@ msgstr "Оповещение об отключении учетной запис msgid "" "\n" "Your Zulip account on %(realm_uri)s has been deactivated, and you will no longer be able to log in.\n" -msgstr "\nВаша учетная запись Zulip в %(realm_uri)s деактивирована и вы больше не сможете войти.\n" +msgstr "\nВаша учетная запись Zulip в %(realm_uri)s отключена и вы больше не сможете войти.\n" #: templates/zerver/emails/digest.html:27 msgid "New streams" @@ -1306,7 +1471,7 @@ msgstr "Новые каналы" #: templates/zerver/emails/digest.html:34 msgid "Click here to log in to Zulip and catch up." -msgstr "Нажми здесь, чтобы зайти в Zulip и наверстать упущенное" +msgstr "Нажмите здесь, чтобы зайти в Zulip и наверстать упущенное" #: templates/zerver/emails/digest.html:40 msgid "Unsubscribe from digest emails" @@ -1370,225 +1535,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Ваш адрес электронной почты %(email)s имеет учетные записи в следующих организациях Zulip, размещенных на %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Вы создали новую демо-организацию Zulip. Эта организация будет\n автоматически удалена через 30 дней. Узнайте подробнее\n о демо-организациях здесь." - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Вы создали новую организацию Zulip:\n %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Добро пожаловать в Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "Вы подключились к организации Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "Вам будет необходима следующая информация, когда будете подключаться через браузер, мобильные и компьютерные приложения:" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL организации: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Ваше имя пользователя: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Для входа в систему используйте вашу учетную запись LDAP" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "Адрес электронной почты вашей учетной записи: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "К организации" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "Если вы новичок в Zulip, посмотрите наше Руководство по началу работы!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "У нас также имеется руководство, как настроить свою организацию Zulip." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "Вопросы? Свяжитесь с нами — мы с радостью поможем!" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s на Zulip: подробности вашей новой организации" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s на Zulip: подробности вашей новой учетной записи" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "Вы создали новую демо-организацию Zulip. Эта организация будет автоматически удалена через 30 дней. Узнайте подробнее о демо-организациях здесь: %(demo_organizations_help_link)s!" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Вы создали новую организацию Zulip: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Вы подключились к организации Zulip %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "Вам будет необходима следующая информация, когда будете подключаться через браузер, мобильные и компьютерные приложения (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "Если вы новичок в Zulip, посмотрите наше Руководство по началу (%(getting_user_started_link)s) работы!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "У нас также имеется руководство для настройки вашей организации (%(getting_organization_started_link)s)." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "Есть вопросы? Свяжитесь с нами по %(support_email)s — мы с радостью поможем!" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "Вот несколько советов, как упорядочить разговоры в Zulip по темам." - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "В Zulip, каналы определяют кто получает сообщения. Темы сообщают о чем сообщения." - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "Используя темы, вы можете читать Zulip по одной беседе. Вы увидите каждое сообщение в контексте, независимо от того, сколько различных обсуждений происходит." - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "Каналы и темы в приложении Zulip" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "Чтобы начать новый разговор, просто выберите канал и начните новую тему. Таким образом, новая ветка беседы не будет прерывать текущие обсуждения. Для хорошего названия темы подумайте о том, как закончить предложение: «Привет, мы можем поговорить о…?»" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Примеры коротких тем" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "Не волнуйтесь о том чтобы выбрать идеальное название для вашей темы. Если что-то выйдет за ее пределы, можно легко переместить сообщения, переименовать тему, или даже переместить тему в другой канал." - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Перейти к Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "Отписаться от приветственных писем %(realm_name)s" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "Организуйте свои разговоры по темам" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "В Zulip каналы определяют, кто получит сообщение. Темы сообщают вам, о чем сообщение." - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "Не волнуйтесь о том чтобы выбрать идеальное название для вашей темы. Если что-то выйдет за ее пределы, можно легко переместить сообщения (%(move_messages_link)s), переименовать тему (%(rename_topics_link)s), или даже переместить тему в другой канал (%(move_topic_to_different_stream_link)s)." - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1616,7 +1562,7 @@ msgstr "%(referrer_full_name)s пригласил вас присоединит msgid "" "%(referrer_full_name)s (%(referrer_email)s) wants you to join them on Zulip " "-- the team communication tool designed for productivity." -msgstr "%(referrer_full_name)s (%(referrer_email)s) приглашает вас общаться в Zulip -- инструмент коммуникации для команд, созданный для эффективности." +msgstr "%(referrer_full_name)s (%(referrer_email)s) приглашает вас общаться в Zulip -- системе командного общения, ориентированной на эффективность." #: templates/zerver/emails/invitation.txt:5 #: templates/zerver/emails/invitation_reminder.txt:5 @@ -1633,7 +1579,7 @@ msgstr "Снова здравствуйте," msgid "" "This is a friendly reminder that %(referrer_name)s wants you to join them on" " Zulip — the team communication tool designed for productivity." -msgstr "Это любезное напоминание о том, что %(referrer_name)s хотел бы общаться с вами на Zulip — инструмент коммуникации для команд, созданный для эффективности." +msgstr "Это напоминание о том, что %(referrer_name)s хочет общаться с вами в Zulip — системе командного общения, ориентированной на эффективность." #: templates/zerver/emails/invitation_reminder.html:18 #: templates/zerver/emails/invitation_reminder.txt:8 @@ -1652,7 +1598,7 @@ msgstr "\n Срок действия этого приглашения ист #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" -msgstr "Напоминание: Присоединяйтесь к %(referrer_name)s на %(referrer_realm_name)s" +msgstr "Напоминание: присоединяйтесь к %(referrer_name)s на %(referrer_realm_name)s" #: templates/zerver/emails/invitation_reminder.txt:3 #, python-format @@ -1660,7 +1606,7 @@ msgid "" "This is a friendly reminder that %(referrer_name)s (%(referrer_email)s) " "wants you to join them on Zulip -- the team communication tool designed for " "productivity." -msgstr "Это любезное напоминание о том, что %(referrer_name)s (%(referrer_email)s) хотел бы общаться с вами на Zulip -- инструмент коммуникации для команд, созданный для эффективности." +msgstr "Это напоминание о том, что %(referrer_name)s (%(referrer_email)s) хочет общаться с вами в Zulip -- системе командного общения, ориентированной на эффективность." #: templates/zerver/emails/invitation_reminder.txt:10 #, python-format @@ -1673,15 +1619,15 @@ msgstr "Срок действия этого приглашения истека #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." -msgstr "Если у вас есть вопросы, пожалуйста свяжитесь с администраторами сервера Zulip по %(email)s." +" at %(email)s." +msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" -msgstr "Есть вопросы или хотите поделиться отзывом? Свяжитесь с нами — мы с радостью поможем!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" +msgstr "" #: templates/zerver/emails/missed_message.html:17 #, python-format @@ -1689,7 +1635,7 @@ msgid "" "This email does not include message content because your organization has " "disabled message content appearing in email notifications." -msgstr "В этом письме нет содержания сообщений, т.к. ваша организация отключила воспроизведение содержания сообщений в оповещениях по электронной почте." +msgstr "В этом письме нет содержания сообщений, потому что ваша организация отключила показ содержания сообщений в оповещениях по электронной почте." #: templates/zerver/emails/missed_message.html:19 #, python-format @@ -1697,36 +1643,60 @@ msgid "" "This email does not include message content because you have disabled message " "content appearing in email notifications." -msgstr "В этом письме нет содержания сообщений, т.к. вы отключили воспроизведение содержания сообщений в оповещениях по электронной почте." +msgstr "В этом письме нет содержания сообщений, потому что вы отключили показ содержания сообщений в оповещениях по электронной почте." #: templates/zerver/emails/missed_message.html:29 #: templates/zerver/emails/missed_message.txt:25 msgid "You are receiving this because you were personally mentioned." -msgstr "Вы получили это, потому что вас лично упомянули." +msgstr "Вы получили это оповещение, потому что вас лично упомянули." #: templates/zerver/emails/missed_message.html:31 #: templates/zerver/emails/missed_message.txt:27 #, python-format msgid "" "You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "Вы получили это, потому что была упомянута @%(mentioned_user_group_name)s." +msgstr "Вы получили это оповещение, потому что была упомянута группа @%(mentioned_user_group_name)s." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 #, python-format msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "Вы получили это, потому что все были упомянуты в #%(stream_name)s." +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "Вы получили это оповещение, потому что все участники темы были упомянуты в #%(stream_name)s > %(topic_name)s." #: templates/zerver/emails/missed_message.html:35 #: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "Вы получили это оповещение, потому что у вас включены оповещения о подстановочных упоминаниях в отслеживаемых темах." + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "Вы получили это оповещение, потому что все были упомянуты в #%(stream_name)s." + +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "Вы получили это оповещение, потому что у вас включены оповещения об отслеживаемых темах." + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." -msgstr "Вы получаете это, т.к. вы включили оповещения по электронной почте для #%(stream_name)s." +msgstr "Вы получили это оповещение, потому что у вас включены оповещения по электронной почте для #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1734,21 +1704,21 @@ msgid "" "preferences." msgstr "Ответьте прямо на это письмо, посмотрите его в %(realm_name)s Zulip, или посмотрите свои настройки электронной почты." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Посмотрите или ответьте в %(realm_name)s Zulip или проверьте настройки электронной почты." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Ответьте в %(realm_name)s Zulip или проверьте настройки электронной почты." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1791,29 +1761,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nВ этом письме нет содержания сообщений, т.к. вы отключили воспроизведение содержания сообщений в оповещениях по электронной почте.\nСмотрите %(alert_notif_url)s для дальнейшей информации.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" -msgstr "Отвечайте прямо на это письмо, или посмотрите его в %(realm_name)s Zulip:" +msgstr "Ответьте прямо на это письмо, или посмотрите его в %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Посмотрите или ответьте в %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Ответьте в %(realm_name)s Zulip:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nНе отвечайте на это письмо. Этот сервер Zulip не настроен так, чтобы принимать входящие письма. Помощь:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Управление настройками электронной почты:" @@ -1838,7 +1808,7 @@ msgstr "команда Zulip" #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" -msgstr "Адрес электронной почты Zulip изменен на %(realm_name)s" +msgstr "Адрес электронной почты Zulip изменен для %(realm_name)s" #: templates/zerver/emails/notify_change_in_email.txt:3 #, python-format @@ -1858,7 +1828,7 @@ msgstr "Организация: %(organization_url)s Время: %(login_time)s #: templates/zerver/emails/notify_new_login.html:12 #: templates/zerver/emails/notify_new_login.txt:1 msgid "We noticed a recent login for the following Zulip account." -msgstr "Мы заметили, что в следующую учетную запись Zulip был произведен вход." +msgstr "Мы заметили, что был выполнен вход в следующую учетную запись Zulip." #: templates/zerver/emails/notify_new_login.html:16 #, python-format @@ -1881,7 +1851,7 @@ msgstr "Время: %(login_time)s" #: templates/zerver/emails/notify_new_login.txt:9 #, python-format msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "Устройство: %(device_browser)s на %(device_os)s." +msgstr "Устройство: %(device_browser)s под %(device_os)s." #: templates/zerver/emails/notify_new_login.html:28 #: templates/zerver/emails/notify_new_login.txt:11 @@ -1900,7 +1870,7 @@ msgid "" "If you do not recognize this login, or think your account may have been " "compromised, please reset your password or " "contact us immediately at %(support_email)s." -msgstr "Если вы не узнаете этот логин, или вы думаете, что ваша учетная запись могла стать доступна для других, пожалуйста сбросьте ваш пароль или немедленно свяжитесь с нами по %(support_email)s." +msgstr "Если вы не знаете об этом входе или думаете, что ваша учетная запись могла стать доступна посторонним, пожалуйста сбросьте ваш пароль или немедленно свяжитесь с нами по %(support_email)s." #: templates/zerver/emails/notify_new_login.html:40 #: templates/zerver/emails/notify_new_login.txt:20 @@ -1919,7 +1889,7 @@ msgstr "Отписаться от уведомлений авторизации" #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" -msgstr "Новый логин с %(device_browser)s на %(device_os)s" +msgstr "Новый логин с %(device_browser)s под %(device_os)s" #: templates/zerver/emails/notify_new_login.txt:3 #, python-format @@ -1931,7 +1901,7 @@ msgstr "Организация: %(organization_url)s" msgid "" "\n" "If you do not recognize this login, or think your account may have been compromised, please reset your password at %(reset_link)s or contact us immediately at %(support_email)s." -msgstr "\nЕсли вы не узнаете этот логин, или вы думаете, что ваша учетная запись могла стать доступна для других, пожалуйста сбросьте ваш пароль по ссылке %(reset_link)s или немедленно свяжитесь с нами через %(support_email)s." +msgstr "\nЕсли вы знаете об этом входе или думаете, что ваша учетная запись могла стать доступна посторонним, пожалуйста сбросьте ваш пароль по ссылке %(reset_link)s или немедленно свяжитесь с нами через %(support_email)s." #: templates/zerver/emails/onboarding_zulip_guide.html:9 #: templates/zerver/emails/onboarding_zulip_guide.txt:1 @@ -1939,7 +1909,7 @@ msgid "" "As you are getting started with Zulip, we'd love to help you discover how it" " can work best for your needs. Check out this guide to key Zulip features " "for organizations like yours!" -msgstr "Если вы только начинаете работать с Zulip, мы будем рады помочь вам узнать, как он может наилучшим образом подойти для ваших нужд. Ознакомьтесь с этим руководством по ключевым функциям Zulip для таких организаций как ваша!" +msgstr "Если вы только начинаете работать с Zulip, мы будем рады помочь вам узнать, как он может наилучшим образом подойти для ваших нужд. Ознакомьтесь с этим руководством по ключевым функциям Zulip для организаций, подобных вашей!" #: templates/zerver/emails/onboarding_zulip_guide.html:13 #: templates/zerver/emails/onboarding_zulip_guide.txt:4 @@ -1976,6 +1946,14 @@ msgstr "Посмотреть руководство Zulip для некомме msgid "View Zulip guide for communities" msgstr "Посмотреть руководство Zulip для сообществ" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "Отписаться от приветственных писем %(realm_name)s" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "Руководство Zulip для бизнеса" @@ -2004,17 +1982,89 @@ msgstr "Руководство Zulip для некоммерческих орг msgid "Zulip guide for communities" msgstr "Руководство Zulip для сообществ" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "Вот несколько рекомендаций о том, как упорядочить разговоры в Zulip по темам." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "В Zulip каналы определяют, кто получает сообщения. Темы показывают, о чем сообщения." + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "Используя темы, вы можете читать Zulip по одной беседе. Вы увидите каждое сообщение в контексте, независимо от того, сколько различных обсуждений происходит." + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "Каналы и темы в приложении Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "Чтобы начать новый разговор, просто выберите канал и начните новую тему. Таким образом, новая ветка беседы не будет прерывать текущие обсуждения. Для хорошего названия темы подумайте о том, как закончить предложение: «Привет, мы можем поговорить о…?»" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Примеры коротких тем" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "Не волнуйтесь о том чтобы выбрать идеальное название для вашей темы. Если что-то выйдет за ее пределы, можно легко переместить сообщения, переименовать тему, или даже переместить тему в другой канал." + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Перейти к Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "Организуйте свои разговоры по темам" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "В Zulip каналы определяют, кто получит сообщение. Темы сообщают вам, о чем сообщение." + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "Не волнуйтесь о том чтобы выбрать идеальное название для вашей темы. Если что-то выйдет за ее пределы, можно легко переместить сообщения (%(move_messages_link)s), переименовать тему (%(rename_topics_link)s), или даже переместить тему в другой канал (%(move_topic_to_different_stream_link)s)." + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format msgid "" "Somebody (possibly you) requested a new password for the Zulip account " "%(email)s on %(realm_uri)s." -msgstr "Кто-то (возможно, вы) запросил новый пароль для учетной записи Zulip %(email)s на %(realm_uri)s." +msgstr "Кто-то (возможно, вы) запросил новый пароль для учетной записи Zulip %(email)s под %(realm_uri)s." #: templates/zerver/emails/password_reset.html:13 msgid "Click the button below to reset your password." -msgstr "Щелкните на кнопку ниже, чтобы сбросить ваш пароль. Спасибо!" +msgstr "Нажмите на кнопку ниже, чтобы сбросить ваш пароль. Спасибо!" #: templates/zerver/emails/password_reset.html:14 msgid "Reset password" @@ -2026,7 +2076,7 @@ msgid "" "You previously had an account on %(organization_url)s, but it has been " "deactivated. You can contact an organization administrator to reactivate your account." -msgstr "Ранее у вас была учетная запись на %(organization_url)s, но она была деактивирована. Вы можете связаться с администратором организации с тем, чтобы реактивировать вашу учетную запись." +msgstr "Ранее у вас была учетная запись на %(organization_url)s, но она была отключена. Вы можете связаться с администратором организации с тем, чтобы включить вашу учетную запись." #: templates/zerver/emails/password_reset.html:21 #: templates/zerver/emails/password_reset.txt:11 @@ -2065,7 +2115,7 @@ msgstr "Нажмите на ссылку ниже, чтобы сбросить msgid "" "You previously had an account on %(realm_uri)s, but it has been deactivated." " You can contact an organization administrator to reactivate your account." -msgstr "Ранее у вас была учетная запись на %(realm_uri)s, о она была деактивирована. Вы можете связаться с администратором организации с тем, чтобы реактивировать вашу учетную запись." +msgstr "Ранее у вас была учетная запись на %(realm_uri)s, о она была отключена. Вы можете связаться с администратором организации с тем, чтобы включить вашу учетную запись." #: templates/zerver/emails/realm_auto_downgraded.html:8 #, python-format @@ -2074,7 +2124,7 @@ msgid "" " Your organization, %(organization_name_with_link)s, has been downgraded to the Zulip Cloud\n" " Free plan because of unpaid invoices. The unpaid invoices have been voided.\n" " " -msgstr "\n Тарифный план вашей организации, %(organization_name_with_link)s, был понижен до Zulip Cloud\n Free из-за неоплаченных счетов. Неоплаченные счета аннулированы.\n " +msgstr "\n Тарифный план вашей организации, %(organization_name_with_link)s был понижен до Zulip Cloud\n Free из-за неоплаченных счетов. Неоплаченные счета аннулированы.\n " #: templates/zerver/emails/realm_auto_downgraded.html:15 #, python-format @@ -2104,7 +2154,7 @@ msgstr "Уважаемые бывшие администраторы %(realm_nam msgid "" "One of your administrators requested reactivation of the previously " "deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "Один из ваших администраторов недавно запросил реактивацию ранее деактивированной организации Zulip, которая располагалась на %(realm_uri)s." +msgstr "Один из ваших администраторов недавно запросил реактивацию ранее отключенной организации Zulip, которая располагалась на %(realm_uri)s." #: templates/zerver/emails/realm_reactivation.html:13 msgid "Click the button below to reactivate your organization." @@ -2392,7 +2442,7 @@ msgid "Incoming webhooks" msgstr "Входящие вебхуки" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Интерактивные боты" @@ -2420,7 +2470,7 @@ msgid "" "The organization you are trying to join, %(realm_name)s, does not allow signups using " "emails with your email domain." -msgstr "Организация к которой вы хотите присоединиться, %(realm_name)s, не разрешает регистрацию с адресами в вашем почтовом домене." +msgstr "Организация %(realm_name)s, к которой вы пытаетесь присоединиться, не разрешает регистрацию с адресами в вашем почтовом домене." #: templates/zerver/invalid_email.html:27 #, python-format @@ -2428,7 +2478,7 @@ msgid "" "The organization you are trying to join, %(realm_name)s, does not allow signups using " "disposable email addresses." -msgstr "Организация, к которой вы пытаетесь присоединиться, %(realm_name)s, не разрешает регистрацию с использованием одноразовых адресов электронной почты." +msgstr "Организация %(realm_name)s, к которой вы пытаетесь присоединиться, не разрешает регистрацию с использованием одноразовых адресов электронной почты." #: templates/zerver/invalid_email.html:30 #, python-format @@ -2436,7 +2486,7 @@ msgid "" "The organization you are trying to join, %(realm_name)s, does not allow signups using " "emails that contain \"+\"." -msgstr "Организация к которой вы хотите присоединиться, %(realm_name)s, не разрешает регистрацию с почтовыми адресами которые содержат \"+\"." +msgstr "Организация %(realm_name)s, к которой вы пытаетесь присоединиться, не разрешает регистрацию с почтовыми адресами, содержащими \"+\"." #: templates/zerver/invalid_email.html:33 msgid "Please sign up using a valid email address." @@ -2457,7 +2507,7 @@ msgstr "Привет! Спасибо за ваш интерес к Zulip." #: templates/zerver/invalid_realm.html:18 msgid "There is no Zulip organization hosted at this subdomain." -msgstr "Тут нет организаций Zulip размещенных на этом поддомене." +msgstr "Нет организаций Zulip, размещенных в этом поддомене." #: templates/zerver/log_into_subdomain_token_invalid.html:4 msgid "Invalid or expired login session" @@ -2465,7 +2515,7 @@ msgstr "Недействительный или просроченный сеа #: templates/zerver/log_into_subdomain_token_invalid.html:12 msgid "Invalid or expired login session." -msgstr "Неверная или истекшая сессия." +msgstr "Неверный или истекший сеанс." #: templates/zerver/login.html:18 msgid "Log in to Zulip" @@ -2559,17 +2609,17 @@ msgstr "Пожалуйста, свяжитесь с человеком, кото #: templates/zerver/rate_limit_exceeded.html:4 msgid "Rate limit exceeded" -msgstr "Превышен лимит" +msgstr "Превышено ограничение частоты" #: templates/zerver/rate_limit_exceeded.html:15 msgid "Rate limit exceeded." -msgstr "Вы превысили лимит." +msgstr "Превышено ограничение частоты." #: templates/zerver/rate_limit_exceeded.html:17 msgid "" "You have exceeded the limit for how\n" " often a user can perform this action." -msgstr "Вы превысили предел того, \n как часто пользователь может выполнить это действие." +msgstr "Вы превысили предел частоты \n выполнения этого действия." #: templates/zerver/rate_limit_exceeded.html:19 #, python-format @@ -2892,292 +2942,295 @@ msgid "" " " msgstr "\n Вы также можете\n использовать приложение\n Zulip для рабочего стола.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "регистрации" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} только что зарегистрировался в Zulip. (всего: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} принял ваше приглашение присоединиться к Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Неверное размещение заказа." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." -msgstr "Id поля {id} не найдено." +msgstr "Поле с ID {id} не найдено." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Неверное название группы каналов по умолчанию '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "Неверное название группы каналов по умолчанию '{group_name}'" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Слишком длинное название группы каналов (лимит: {} знаков)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "Слишком длинное название группы каналов по умолчанию (предел: {max_length} символов)" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Название группы каналов по умолчанию '{}' содержит символы NULL (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "Название группы каналов по умолчанию '{group_name}' содержит символы NULL (0x00)." -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Неверная группа каналов по умолчанию {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "Неверная группа каналов по умолчанию {group_name}" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" -msgstr "'{stream_name}' это канал по умолчанию, он не может быть добавлен к '{group_name}'" +msgstr "'{stream_name}' - это канал по умолчанию, он не может быть добавлен к '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Группа каналов по умолчанию '{group_name}' уже существует" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Канал '{stream_name}' уже включен в группу каналов по умолчанию '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Канал '{stream_name}' не включен в группу каналов по умолчанию '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Эта группа каналов по умолчанию уже имеет название '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "Эта группа каналов по умолчанию уже названа '{group_name}'" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Группа каналов по умолчанию '{}' уже существует" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." -msgstr "Для защиты пользователей, Zulip ограничивает количество приглашений которые вы можете отправить в день. Вы исчерпали ваш лимит, поэтому приглашения не были отправлены." +msgstr "Для защиты пользователей, Zulip ограничивает количество приглашений, которые вы можете отправить в день. Вы исчерпали ваш лимит, поэтому приглашения не были отправлены." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Ваша учетная запись слишком новая для отправки приглашений для этой организации. Попросите администратора организации или более опытного пользователя." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Некоторые адреса электронной почты не прошли проверку, поэтому мы не выслали ни одного приглашения." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Мы не смогли никого пригласить." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Некоторые из этих адресов электронной почты уже используют Zulip, поэтому мы не стали отправлять им приглашение. А всем остальным - выслали!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Ничего не изменилось" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "Личные сообщения не могут быть перемещены в канал." -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "Личные сообщения не могут иметь тему." -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Неверный propagate_mode без редактирования темы" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Нельзя изменить содержание сообщения, когда меняется канал." -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Виджеты нельзя редактировать." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} пометил эту тему как решенную." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} пометил эту тему как не решенную." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Настоящая тема была перемещена в {new_location} пользователем {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Сообщение из настоящей темы было перемещено в {new_location} пользователем {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} сообщений было перемещено из настоящей темы в {new_location} пользователем {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Эта тема была перемещена сюда из {old_location} пользователем {user}" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "[Сообщение]({message_link}) было перемещено сюда из {old_location} пользователем {user}." -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} сообщений было перемещено сюда из {old_location} пользователем {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "В вашей организации выключено редактирование сообщений" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "У вас нет прав для редактирования этого сообщения" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Разрешенное время редактирования сообщения истекло" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "Разрешенное время редактирования темы сообщения истекло." -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "У вас нет права использовать подстановочные упоминания в этом канале." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "У вас нет полномочий перемещать данное сообщение." -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "У вас нет разрешения на перемещение этого сообщения из-за отсутствия доступа к его каналу" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "Разрешенное время редактирования канала этого сообщения истекло" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Неверный флаг: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "Неверный флаг: '{flag}'" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Флаг нельзя править: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "Флаг нередактируемый: '{flag}'" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Неверный флаг операции по сообщению: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "Неверное действие над флагом сообщения: '{operation}'" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Неверное сообщение(я)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Невозможно отобразить сообщение" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Ожидал ровно один канал" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Неверный тип данных для канала" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Неверный тип данных для получателей" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "В списках получателей могут быть адреса электронной почты или ID пользователей, но не то и другое." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Ваш бот {bot_identity} попытался послать сообщение в канал с ID {stream_id}, но канала с таким ID не существует." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Ваш бот {bot_identity} попытался послать сообщение в канал {stream_name}, но такого канала не существует. Нажмите [здесь]({new_stream_link}), чтобы его создать." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Ваш бот {bot_identity} попытался послать сообщение в канал {stream_name}. Канал существует, но на него никто не подписан." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Личные сообщения в этой организации отключены." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Темы необходимы в этой организации" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Виджеты: программист API послал неверное JSON-содержание" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Виджеты: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Реакция уже существует." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Пользовательский эмодзи с таким именем уже существует." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "В упорядоченном списке не должно быть повторяющихся шаблонов ссылок" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "Упорядоченный список должен включать все имеющиеся шаблоны ссылок ровно по одному разу" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "Неверный тип данных для идентификатора канала" @@ -3191,8 +3244,8 @@ msgid "Scheduled message was already sent" msgstr "Запланированное сообщение уже отправлено" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "Запланированное время доставки должно быть в будущем." @@ -3211,18 +3264,32 @@ msgstr "Сообщение, которое вы запланировали на msgid "[View scheduled messages](#scheduled)" msgstr "[Показать запланированные сообщения](#scheduled)" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "Канал уже отключен" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "Канал сейчас не отключен" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "Канал с названием {stream_name} уже есть" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "Канал {stream_name} возвращен из архива." + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} изменил [права доступа](/help/stream-permissions) для настоящего канала с **{old_policy}** на **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3231,38 +3298,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} изменил [права на запись сообщений](/help/stream-sending-policy) в настоящем канале:\n\n* **Прежние права**: {old_policy}.\n* **Новые права**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} переименовал канал {old_stream_name} в {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Нет описания." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} изменил описание этого канала." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Старое описание" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Новое описание" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Навсегда" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Сообщения в настоящем канале отныне сохраняются навсегда." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3272,56 +3339,59 @@ msgid "" "{summary_line}" msgstr "{user} изменил [срок хранения сообщений](/help/message-retention-policy) в настоящем канале:\n* **Прежний срок хранения**: {old_retention_period}\n* **Новый срок хранения**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Вы не можете прикрепить вложенное сообщение к этому сообщению." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Неверный ID пользователя {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "Неверный ID пользователя {user_id}" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Группа пользователей '{}' уже существует." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "Группа пользователей '{group_name}' уже существует." -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Этот API не доступен для входящих вебхук ботов." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Учетная запись не связана с этим поддоменом" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Конечная точка не принимает запросы бота." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Должен быть администратором сервера" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Недостаточно прав" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Конечная точка требует базовую HTTP аутентификацию." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Неверный заголовок для Basic-авторизации" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Отсутствует заголовок авторизации для Basic-авторизации" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Вебхук-ботам доступны только вебхуки" @@ -3330,101 +3400,107 @@ msgstr "Вебхук-ботам доступны только вебхуки" msgid "" "Your account {username} has been deactivated. Please contact your " "organization administrator to reactivate it." -msgstr "Ваша учетная запись {username} была деактивирована. Пожалуйста, свяжитесь с администратором вашей организации чтобы снова её активировать." +msgstr "Ваша учетная запись {username} была отключена. Пожалуйста, свяжитесь с администратором вашей организации чтобы снова её активировать." #: zerver/forms.py:65 msgid "The password is too weak." -msgstr "Пароль слишком простой" +msgstr "Пароль слишком простой." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Длина поддомена должна быть 3 символа или больше." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Поддомен не должен начинаться с или заканчиваться на '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Название поддомена должно содержать только латинские строчные буквы, цифры и знаки '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Поддомен недоступен. Пожалуйста, выберите другой." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Пожалуйста, используйте реальный адрес электронной почты." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Организация, к которой вы пытаетесь подключиться с использованием {email}, не существует." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Запросите приглашение для {email} у администратора организации." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Ваш адрес электронной почты {email} не находится в одном из доменов, которым разрешено регистрироваться в этой организации." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Адреса электронной почты, содержащие, знак '+', не разрешены в этой организации." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Новые участники не могут присоединиться к этой организации, потому что все лицензии Zulip используются. Свяжитесь с человеком, который вас пригласил, и попросите его увеличить количество лицензий, а затем повторите попытку." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Новый пароль" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Подтвердить новый пароль" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Вы совершаете много попыток входа. Попробуй {} seconds or contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "Вы совершаете слишком много попыток входа. Попробуйте еще раз через {seconds} секунд, или обратитесь за помощью к администратору вашей организации." -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." -msgstr "Ваш пароль был деактивирован, т.к. он был слишком слабым. Сбросьте пароль, чтобы создать новый." +msgstr "Ваш пароль был отключен, т.к. он слишком слабый. Сбросьте пароль, чтобы создать новый." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Токен" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "Совет: Вы можете ввести несколько адресов электронной почты, разделяя их запятыми." -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Введите не более 10 адресов электронной почты." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." -msgstr "Мы не можем найти такую организацию Zulip" +msgstr "Мы не можем найти такую организацию Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Неверный адрес электронной почты '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "Неверный адрес электронной почты '{email}'" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3488,37 +3564,37 @@ msgstr "Поддомен не может начинаться или закан msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Домен может содержать только буквы, цифры, '.' и '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." -msgstr "Временная отметка не должна быть отрицательной." +msgstr "Метка времени не должна быть отрицательной." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Тема на должна содержать нулевых байтов" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" -msgstr "Указывать нужно ровно 1 ID канала для сообщений канала" +msgstr "Для сообщений канала нужно указывать ровно один ID канала" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Пользователь отключил синхронизацию черновиков. " -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Черновик не существует" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Открыть Zulip, чтобы посмотреть содержание спойлера" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Уведомления Zulip" #: zerver/lib/email_validation.py:100 msgid "Invalid address." -msgstr "Неверный адрес" +msgstr "Неверный адрес." #: zerver/lib/email_validation.py:105 msgid "Outside your domain." @@ -3530,7 +3606,7 @@ msgstr "Адреса электронной почты, содержащие з #: zerver/lib/email_validation.py:154 msgid "Reserved for system bots." -msgstr "Зарезервированно для системных ботов." +msgstr "Зарезервировано для системных ботов." #: zerver/lib/email_validation.py:177 #, python-brace-format @@ -3543,168 +3619,168 @@ msgstr "Уже имеет учетную запись." #: zerver/lib/email_validation.py:181 msgid "Account has been deactivated." -msgstr "Учетная запись деактивирована." +msgstr "Учетная запись отключена." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Эмодзи '{}' не существует" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "Эмодзи '{emoji_name}' не существует" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Неверный пользовательский эмодзи." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Неверное имя пользовательского эмодзи." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Этот пользовательский эмодзи отключен." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Неверный код эмодзи." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Неверное имя эмодзи." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Неверный тип эмодзи." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Должен быть администратором организации или автором эмодзи" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "Название эмодзи должно заканчиваться на букву или цифру." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "Название эмодзи должно содержать только строчные латинские буквы, цифры, пробелы, тире или подчерки." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Не хватает названия эмодзи." -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Не удается выделить очередь событий" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" -msgstr "Не авторизован: требуется аутентификация через API или пользовательская сессия" +msgstr "Не авторизован: требуется аутентификация через API или пользовательский сеанс" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Канал '{stream}' не существует" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Канал с ID '{stream_id}' не существует" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "владелец организации" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "пользователь" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." -msgstr "Нельзя деактивировать единственного {entity} -а/-я." +msgstr "Нельзя отключить единственного {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Неверный оператор включения разметки Markdown: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" -msgstr "Частота использования API превысила лимит." +msgstr "Частота использования API превысила ограничение." -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Неверный JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Должен быть членом организации" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Должны быть администратором организации" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Должен быть владельцем организации" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Неправильное имя пользователя или пароль" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" -msgstr "Учётная запись деактивирована" +msgstr "Учётная запись отключена" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Эта организация отключена" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" -msgstr "Регистрация сервиса мобильных push-оповещений вашего сервера была деактивирована." +msgstr "Регистрация сервиса мобильных push-оповещений вашего сервера была отключена." -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Парольная аутентификация отключена в этой организации" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Ваш пароль отключен, его необходимо сбросить " -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Неверный API-ключ" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "неверно оформленный API-ключ" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "Событие '{event_type}' в настоящее время не поддерживается вебхуком {webhook_name}" +"webhook; ignoring" +msgstr "Событие '{event_type}' в настоящее время не поддерживается вебхуком {webhook_name}; игнорируем" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Не удалось выделить данные из запроса: данное событие сгенерировано {webhook_name}?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Неверный поддомен." -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Доступ запрещен" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3712,6 +3788,14 @@ msgid "" "messages in this topic." msgstr "У вас есть право переместить только {total_messages_allowed_to_move}/{total_messages_in_topic} самых последних сообщений в этой теме." +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Реакция уже существует." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Реакция не существует." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Имя пользователя Twitter" @@ -3753,8 +3837,8 @@ msgid "Settings" msgstr "Настройки" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Зайдите в настройки, чтобы настроить уведомления и параметры отображения." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3766,264 +3850,272 @@ msgid "" "and give it a go!" msgstr "Нажмите здесь, чтобы начать новый разговор. Выберите тему (лучше всего 2-3 слова) и отправьте её!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Фреймворки интерации" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Непрерывная интеграция" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Поддержка пользователей" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Установка" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Развлечения" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Общение" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Финансовые" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Человеческие ресурсы" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Маркетинг" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Разное" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Мониторинг" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Управление проектами" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Продуктивность" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Контроль версий" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Сообщение не должно быть пустым" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Сообщение не должно содержать нулевые байты" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Оператор {} не поддерживается." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "Вам не разрешено упоминать группу пользователей '{user_group_name}'. Вы должны состоять в '{can_mention_group_name}', чтобы иметь такую возможность." -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "Оператор {operator} не поддерживается." + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Неверные уточняющий оператор: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Пропущен параметр 'anchor'." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Неверный якорь" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" -msgstr "Если вы новичок в Zulip, ознакомьтесь с нашим [Руководство по использованию Zulip для занятий]({getting_started_url})!" +msgstr "Если вы новичок в Zulip, посмотрите наше [руководство по использованию Zulip для занятий]({getting_started_url})!" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" -msgstr "Если вы новичок в Zulip, посмотрите наше [Руководство по началу работы]({getting_started_url})!" +msgstr "Если вы новичок в Zulip, посмотрите наше [руководство по началу работы]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." -msgstr "У нас также есть руководство по [Настройке Zulip для занятий]({organization_setup_url})." +msgstr "У нас также есть руководство по [настройке Zulip для занятий]({organization_setup_url})." -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." -msgstr "У нас так же есть руководство для [Настройки вашей организации]({organization_setup_url})." +msgstr "У нас также есть руководство для [настройки вашей организации]({organization_setup_url})." -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "Обратите внимание, что это [демо-организация]({demo_organization_help_url}) и она будет **автоматически удалена** через 30 дней." -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Привет, добро пожаловать в Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "Это личное сообщение от меня, приветственного бота." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Я также могу помочь вам начать! Просто нажмите на любое место в этом сообщении или нажмите `r`, чтобы ответить." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Вот несколько сообщений, которые я понимаю:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "Вы можете [скачать](/apps/) [мобильные и настольные приложения](/apps/). Zulip так же отлично работает в браузере." -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Перейдите в [настройки профиля](#settings/profile) чтобы добавить [изображение профиля](/help/change-your-profile-picture) и отредактировать вашу [информацию профиля](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Перейдите в [настройки отображения](#settings/display-settings) чтобы [переключиться между светлой и темной темой](/help/dark-theme), [выбрать свою любимую тему эмодзи](/help/emoji-and-emoticons#change-your-emoji-set), [выбрать ваш язык](/help/change-your-language), и внести другие изменения в работу с Zulip." +msgstr "Перейдите в [Предпочтения](#settings/preferences), чтобы [выбрать светлую или темную тему оформления](/help/dark-theme), [указать предпочитаемый набор эмодзи](/help/emoji-and-emoticons#change-your-emoji-set), [сменить язык интерфейса](/help/change-your-language) и сделать другие персональные настройки Zulip." -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "В Zulip каналы [определяют, кто получит сообщение] (/help/streams-and-topics). Они похожи на каналы в других приложениях для общения." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Просмотреть и подписаться на каналы](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." -msgstr "В Zulip темы [говорят вам, о чем сообщение] (/help/streams-and-topics). Это легкие темы, очень похожие на тему письма." +msgstr "В Zulip темы [говорят вам, о чем сообщение] (/help/streams-and-topics). Это легковеснные описатели, очень похожие по сути на строку темы электронного письма." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "Проверьте [Последние разговоры](#recent), чтобы узнать, что происходит! Вы можете вернуться к этому разговору, нажав \"Личные сообщения\" в левом верхнем углу." -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "[Клавиатурные комбинации] Zulip (#keyboard-shortcuts) позволяют быстро и эффективно перемещаться по приложению." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Нажмите `?` в любое время, чтобы посмотреть [подсказку] (#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip использует [Markdown](/help/format-your-message-using-markdown), интуитивно понятное форматирование для **жирного**, *курсива*, списков и многого другого. Нажмите [здесь](#message-formatting) для получения подсказки." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Просмотрите наши [советы по обмену сообщениями](/help/messaging-tips), чтобы узнать о реакциях эмодзи, блоках кода и многом другом!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Посмотрите наше [Руководство по началу работы](/help/getting-started-with-zulip) или просмотрите [Центр помощи](/help/), чтобы узнать больше!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Извините, я не понял ваше сообщение. Пожалуйста, попробуйте одну из следующих команд:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Это закрытый канал, это видно по символу замочка рядом с названием канала." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Закрытые каналы видны только членам такого канала." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Чтобы управлять этим каналом, зайдите в [настройки канала]({stream_settings_url}) и выберите `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Это сообщение в канале #**{default_notification_stream_name}** на тему `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Темы - простой инструмент для того, чтобы поддерживать общение организованным." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Вы можете узнать подробнее о темах в разделе [Каналы и темы] ({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Это сообщение в канале #**{default_notification_stream_name}** на тему `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4038,669 +4130,758 @@ msgstr "Неверный JSON в ответе" msgid "Invalid response format" msgstr "Неверный формат ответа" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Неверная опция GCM ограничителю: приоритет {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "Неверная опция GCM ограничителю: приоритет {priority!r}" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Неверные опции GCM ограничителю: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "Неверные опции GCM ограничителю: {options}" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Токен не существует" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "В этой организации отключено включение содержимого сообщений в мобильные push-оповещения. " -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} упомянул @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} упомянул вас:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} упомянул всех:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" -msgstr "Пользователь не авторизован для такого запроса" +msgstr "У пользователя нет полномочий для такого запроса" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' больше не использует Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "Вы не можете отправлять личные сообщения за пределы своей организации." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Ошибка ограничителя push-уведомлений: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "Ошибка ограничителя push-уведомлений: {error}" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" -msgstr "Не возможно выбрать между аргументами '{var_name1}' и '{var_name2}'" +msgstr "Невозможно сделать выбор между параметрами '{var_name1}' и '{var_name2}'" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" -msgstr "Отсутствует аргумент '{var_name}'" +msgstr "Отсутствует параметр '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Неверное значение для '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Неверные данные" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Аргумент \"{}\" не является корректным JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "Параметр \"{name}\" не является корректным JSON." #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "Запланированное сообщение не существует" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Служба безопасности по учетным записям Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Только администратор организации может отправлять сообщения в этот канал." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Только администраторы организации и модераторы могут отправлять сообщения в этот канал." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Гости не могут писать в этом канале" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Новые участники не могут писать сообщения в этом канале." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Не авторизован для отправки сообщений в канал '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "Нет полномочий для отправки в канал '{stream_name}'" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Пожалуйста, укажите 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Пожалуйста, выберите: 'stream' или 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Неверный код канала" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Название канала '{}' уже занято." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "Название канала '{stream_name}' уже занято." -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Неверное название канала '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "Неверное название канала '{stream_name}'" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Канал(ы) ({}) не существуют" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "Канал по умолчанию не может быть закрытым." -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "Канала(ов) ({stream_names}) нет" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Открытые веб-каналы не активированы." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Группа каналов по умолчанию с id '{}' не существует." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "Группа каналов по умолчанию с id '{group_id}' не существует." -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Название канала не может быть пустым!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Слишком длинное имя канала (лимит: {} символов)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "Слишком длинное имя канала (предел: {max_length} символов)." -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Недопустимые символы в названии канала в позиции {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "Недопустимый символ в названии канала на месте {position}!" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Тема не может быть пустой" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Неверные символы в теме в позиции {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "Недопустимый символ в теме на месте {position}!" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Данные подписчика недоступны для этого канала" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Невозможно получить подписчиков закрытого канала" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} не является булевым типом" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} не является датой" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} не является словарем" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "Неожиданный параметр \"{argument}\" в {var_name}" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} не является числом с плавающей запятой" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} слишком маленькая" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} не является целочисленной" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "{var_name} не является корректным JSON" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} слишком большая" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} не является списком" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Недопустимая {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} слишком длинная (предел: {max_length} символов)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "{var_name} слишком короткая." + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} не является строкой" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "{var_name} не может быть пустой" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Загрузка превысит квоту вашей организации." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Невозможно декодировать изображение; вы на самом деле загрузили файл изображения?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." -msgstr "Размер изображение превысил лимит." +msgstr "Размер изображения превышает ограничения." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Поврежденная анимированная картинка." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Неизвестный формат анимированного изображения." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Неверная группа пользователей" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "Неверный ID группы пользователей: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" +msgstr "Неверный ID группы пользователей: {group_id}" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' должно быть системной группой пользователей." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." +msgstr "'{setting_name}' должно быть системной группой пользователей." -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." -msgstr "Настройку '{}' нельзя привязать к группе '@role:internet'." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." +msgstr "Настройку '{setting_name}' нельзя применить к группе 'role:internet'." -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." -msgstr "Настройку '{}' нельзя привязать к группе '@role:owners'." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "Настройку '{setting_name}' нельзя применить к группе 'role:owners'." -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." -msgstr "Параметр '{}' нельзя привязать к группе '@role:nobody'." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "Настройку '{setting_name}' нельзя применить к группе 'role:nobody'." -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "Настройку '{setting_name}' нельзя применить к группе 'role:everyone'." + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "Имя группы пользователей не может быть длинее {max_length} символов." + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "Имя группы пользователей не может начинаться с '{prefix}'." + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Слишком длинное имя!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Имя слишком короткое" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Неверные символы в имени!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Неверный формат!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Имя уже занято!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Неверное имя или имя пользователя" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Неверная интеграция '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "Неверная интеграция '{integration_name}'." -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Не хватает параметров настройки: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "Не хватает параметров настройки: {keys}" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Неверное {} значение {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "Для {key} неверное значение {value} ({error})" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Неверные данные конфигурации!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Неверный тип бота" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Неверный тип интерфейса" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Неверный ID пользователя {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "Неверный ID пользователя: {user_id}" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Нет такого бота" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Нет такого пользователя" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Пользователь отключен" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} не является строкой" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} не может быть пустым." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Неверная переменная {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} слишком длинная (лимит: {max_length} символов)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "У {var_name} неверная длина {length}; должна быть {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} не определяется в качестве часового пояса" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} не является датой" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} не является целочисленной" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} слишком маленький" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} слишком большой" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} не является числом с плавающей запятой" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} не является булевым типом" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" -msgstr "{var_name} не является корректным шестнадцатиричным кодом цвета" +msgstr "{var_name} не является корректным шестнадцатеричным кодом цвета" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} не является списком" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} должен содержать ровно {length} элементов" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} не является словарем" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "ключ {key_name} отсутствует в {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Неожиданные аргументы: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "Неожиданные параметры: {keys}" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} не является allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} неверно)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} не является URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "Шаблон URL должен содержать '%(username)s'." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' не может быть пустым." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." -msgstr "Поле не может иметь две одинаковые опции на выбор." +msgstr "Поле не должно содержать одинаковые варианты." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' не является допустимым выбором для '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" -msgstr "{var_name} не является списком строк или цельных чисел" +msgstr "{var_name} не является списком строк или целых чисел" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} не является строкой или цельным числом" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} не имеет длины" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} отсутствует" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Отсутствует заголовок события HTTP '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Вебхук {} ожидает время в миллисекундах." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "Для вебхука {webhook} время должно быть в миллисекундах." -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Должен присутствовать ведущий слэш в zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Нет такой команды: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "Нет такой команды: {command}" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Ошибка CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "Неправильная настройка обратного прокси-сервера: {proxy_reason}" + +#: zerver/models.py:488 msgid "stream events" msgstr "События канала" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Доступно в тарифе Zulip Cloud Standard. Произведите апгрейд, чтобы получить доступ." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "Интеграция с GIPHY отключена" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "Разрешить GIF-файлы с рейтингом Y (очень молодая аудитория)" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "Разрешить GIF-файлы с рейтингом G (широкая аудитория)" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" -msgstr "Разрешить GIF-файлы с рейтингом PG (Родительский контроль)" +msgstr "Разрешить GIF-файлы с рейтингом PG (родительский контроль)" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" -msgstr "Разрешить GIF-файлы с рейтингом PG-13 (Родительский контроль — до 13 лет)" +msgstr "Разрешить GIF-файлы с рейтингом PG-13 (родительский контроль — до 13 лет)" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" -msgstr "Разрешить GIF-файлы с рейтингом R (запрещенное)" +msgstr "Разрешить GIF-файлы с рейтингом R (ограниченное)" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Неверные символы в имени эмодзи" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Неверное регулярное выражение: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "Неверное регулярное выражение: {regex}" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Неизвестная ошибка регулярного выражения" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "Неверный шаблон URL-адреса" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "Группа %(name)r в шаблоне URL отсутствует в шаблоне преобразования ссылок." -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "Группа %(name)r в шаблоне преобразования ссылок отсутствует в шаблоне URL." -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Неверные символы в языке pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "Отсутствует обязательная переменная \"code\" в шаблоне URL" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "Переменная \"code\" должна быть единственной в шаблоне URL" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Администраторы, модераторы, участники и гости" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Администраторы, модераторы и участники" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Администраторы и модераторы" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Только администраторы" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Никто" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Владелец организации" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Администратор организации" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Модератор" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Участник" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Гость" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Открыто в сети" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Открытый" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Закрытый, открытая история переписки" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Закрытый, защищенная история переписки" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Открытый, защищенная история переписки" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Все участники канала могут оставлять сообщения" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Только администраторы организации имеют право писать" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Только администраторы организации и модераторы могут публиковать сообщения" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Только полноценные члены организации могут писать" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Юникод эмодзи" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Дополнительные эмодзи" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Дополнительные эмодзи Zulip" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Пользователь с ID {} деактивирован" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "Пользователь с ID {user_id} отключен" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Пользователь с ID {} является ботом" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "Пользователь с ID {user_id} является ботом" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" -msgstr "Список опций" +msgstr "Список вариантов" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Выбор человека" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Короткий текст" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Длинный текст" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Выбор даты" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Ссылка" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Внешняя учетная запись" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Местоимения" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Неизвестный IP адрес" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "неизвестная операционная система" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Неизвестный браузер" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Пропущен параметр 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Пропущен параметр 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Более новое событие чем {event_id} уже было удалено!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "События {event_id} не было в этой очереди" @@ -4740,7 +4921,7 @@ msgstr "В запросе отсутствует параметр User-Agent" #: zerver/views/custom_profile_fields.py:52 msgid "Label cannot be blank." -msgstr "Лейбл не может быть пустым." +msgstr "Метка не может быть пустой." #: zerver/views/custom_profile_fields.py:66 msgid "Field must have at least one choice." @@ -4762,95 +4943,129 @@ msgstr "В сводке профиля могут отображаться то #: zerver/views/custom_profile_fields.py:185 #: zerver/views/custom_profile_fields.py:250 msgid "A field with that label already exists." -msgstr "Поле с таким лейблом уже существует." +msgstr "Поле с такой меткой уже существует." #: zerver/views/custom_profile_fields.py:235 msgid "Default custom field cannot be updated." msgstr "Дополнительное поле по умолчанию не может быть обновлено." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Эта конечная точка недоступна в производственном режиме." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend не включен." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Неверный параметр '{}' для анонимного запроса" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "Неверный параметр '{key}' для анонимного запроса" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Неизвестная точка доступа: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "Неизвестная точка доступа: {hotspot}" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Укажите хотя бы один адрес электронной почты." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Не существует канала с id: {}. Приглашения не были отправлены." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "Канал с id: {stream_id} отсутствует. Приглашения не были отправлены." + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "У вас нет разрешения подписывать других пользователей на каналы." -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Такого приглашения нет" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "Приглашение уже отозвано" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "Неверный код канала {}. Приглашения не были отправлены." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "Неверный ID канала {stream_id}. Приглашения не были отправлены." -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "История редактирования сообщений отключена в этой организации." -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "У вас нет прав для удаления этого сообщения" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Разрешенное время удаления сообщения истекло" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Сообщение уже удалено" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Затребовано слишком много сообщений (максимум {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "Затребовано слишком много сообщений (максимум {max_messages})." #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "Якорь можно исключить только в конце диапазона" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Нет такой темы '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "Нет такой темы '{topic}'" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Не указан отправитель" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Зеркалирование не разрешено с ID пользователя получателей" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Неверное зеркалированное сообщение" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "В этой организации зеркалирование Zephyr не разрешено" @@ -4866,31 +5081,32 @@ msgstr "Пользователь уже заглушен" msgid "User is not muted" msgstr "Пользователь не заглушен" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Присутствие не поддерживается для пользователей-ботов." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Нет данных о присутствии {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Клиент не послал никаких новых значений" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." -msgstr "Клиент должен передать emoji_name если он передает emoji_code или reaction_type." +msgstr "Клиент должен передать emoji_name, если он передает emoji_code или reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Неверный статус: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "Неверный статус: {status}" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" -msgstr "Пустой или неверный токен длины" +msgstr "Пустой или неверной длины токен" #: zerver/views/push_notifications.py:25 msgid "Invalid APNS token" @@ -4900,39 +5116,39 @@ msgstr "Неверный токен APNS" msgid "" "At least one of the following arguments must be present: emoji_name, " "emoji_code" -msgstr "Как минимум один и следующих аргументов должен присутствовать: emoji_name, emoji_code" - -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Реакция не существует." +msgstr "Как минимум один из следующих параметров должен присутствовать: emoji_name, emoji_code" #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Уведомления о прочтении в настоящее время отключены в этой организации." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Неверный язык '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "Неверный язык '{language}'" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Включите хотя бы один способ аутентификации" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Неверный провайдер видеочатов {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "Неверный провайдер видеочатов {video_chat_provider}" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Неверный giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "Неверный giphy_rating {giphy_rating}" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Должна быть демонстрационная организация." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Неверный домен: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "Неверный домен: {error}" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4944,42 +5160,43 @@ msgstr "Домен {domain} уже является частью вашей ор msgid "No entry found for domain {domain}." msgstr "Не найдена запись для домена {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Вы должны загрузить только один файл." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Только администраторы могут переопределять встроенные эмодзи." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Размер загруженного файла больше установленного лимита в {} MB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "Размер загруженного файла больше установленного ограничения {max_size} MiB" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Превышена частота использования." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." -msgstr "Пожалуйста, затребуйте ручную выгрузку данных у {email}." +msgstr "Пожалуйста, запросите ручную выгрузку данных у {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Неверный ID выгрузки данных" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Выгрузка данных уже удалена" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "Экспорт не удался, удалять нечего" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "Экспорт еще продолжается" @@ -4987,7 +5204,7 @@ msgstr "Экспорт еще продолжается" msgid "You must upload exactly one icon." msgstr "Вы должны загрузить только одну иконку." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Фильтр URL не найден." @@ -4995,109 +5212,102 @@ msgstr "Фильтр URL не найден." msgid "You must upload exactly one logo." msgstr "Вы должны загрузить только один логотоп." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Неверная интерактивная среда" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "Требуется получатель при обновлении типа запланированного сообщения." -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "Требуется тема при обновлении типа запланированного сообщения для канала." -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "Неверный формат запроса" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "Неверный DSN" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Пользователь не авторизован выполнять запросы от имени '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Закрытый канал нельзя сделать каналом по умолчанию." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Вы должны передать \"new_description\" или \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Неверное значение для \"op\". Укажите \"add\" или \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Канал по умолчанию нельзя сделать закрытым." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Канал уже имеет это имя!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Не указано действие. Укажите хотя бы один 'add' или 'delete'." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} подписал вас на канал {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} подписал вас на следующие каналы:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Не удалось получить доступ к каналу ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Вы можете только приглашать других пользователей Zephyr зеркалирования в закрытые каналы." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} создал следующие каналы: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} создал новый канал {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "новые каналы" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** канал создан пользователем {user_name}. **Описание:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Неизвестное свойство подписки: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "Неизвестное свойство подписки: {property}" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Не подписан к каналу с id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "Нет подписки на канал с id {stream_id}" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Неверный json для субсообщения" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" -msgstr "

Вы не авторизованы для просмотра этого файла.

" +msgstr "

Вы не уполномочены просматривать этот файл.

" #: zerver/views/typing.py:31 msgid "Empty 'to' list" @@ -5111,97 +5321,108 @@ msgstr "Пользователь отключил оповещения печа msgid "User has disabled typing notifications for direct messages" msgstr "Пользователь отключил оповещения печати для личных сообщений." -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Файл не найден.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "

Этот файл отсутствует или был удален.

" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Неверный токен" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Неверное имя файла" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Выберите файл для загрузки" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "За раз можно загрузить только один файл" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Не указаны новые данные" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "{user_full_name} добавил вас в группу {group_name}." -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "{user_full_name} удалил вас из группы {group_name}." -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Пользователь {user_id} уже является участником этой группы" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Нет участника '{}' в этой группе пользователей" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "В этой группе пользоваталей нет участника '{user_id}'" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Группа пользователей {group_id} уже является подгруппой настоящей группы." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "Группа пользователей {user_group_id} уже является подгруппой одной из переданных подгрупп." + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Группа пользователей {group_id} не является подгруппой настоящей группы." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Изменение аватаров отключено в данной организации." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Изменение адреса электронной почты отключено в этой организации." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Неверный язык по умолчанию default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Неверный звук уведомления '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "Неверный звук оповещения '{notification_sound}'" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Неверный период пакетной рассылки: {} секунд " +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "Неверный период пакетной рассылки: {seconds} с" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Ваш пароль Zulip задается в LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Неверный пароль!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Вы сделали слишком много попыток! Попробуйте еще раз через {} секунд." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "Вы сделали слишком много попыток! Попробуйте еще раз через {seconds} с." -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Новый пароль слишком слабый!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Вы должны загрузить ровно один аватар." @@ -5248,6 +5469,10 @@ msgstr "Недопустимое имя встроенного бота." msgid "Username already in use" msgstr "Имя пользователя занято" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "У пользователя нет полномочий для создания пользователей" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5258,8 +5483,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Одноразовые адреса электронной почты не допускаются в этой организации" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Адрес электронной почты '{}' уже используется" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "Адрес электронной почты '{email}' уже используется" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5271,33 +5497,33 @@ msgstr "Данные доступа к Zoom не настроены" #: zerver/views/video_calls.py:127 msgid "Invalid Zoom session identifier" -msgstr "Неверный идентификатор сессии Zoom" +msgstr "Неверный идентификатор сеанса Zoom" #: zerver/views/video_calls.py:139 msgid "Invalid Zoom credentials" msgstr "Неверные данные доступа к Zoom" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Не удалось создать звонок в Zoom." -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton не настроен." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Неверная подпись" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Ошибка подключения к серверу BigBlueButton." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Ошибка аутентификации на сервере BigBlueButton." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "Сервер BigBlueButton вернул неожиданную ошибку." @@ -5317,28 +5543,28 @@ msgstr "Неверный кэш Kerberos" msgid "We were unable to set up mirroring for you" msgstr "Нам не удалось настроить зеркалирование для вас" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "Проекты, использующие этого поставщика системы контроля версий, не поддерживаются" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Недействительные данные" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Неизвестный вебхук-запрос" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Тема не может быть пустой" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Содержимое не может быть пустым" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Неверные данные JSON" @@ -5357,7 +5583,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "Вебхук newrelic ожидает state одним из [created|activated|acknowledged|closed]" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "Ключ Events отсутствует в данных" @@ -5365,19 +5591,20 @@ msgstr "Ключ Events отсутствует в данных" msgid "Unable to handle Pivotal payload" msgstr "Не удалось обработать данные из Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Ошибка: параметр channels_map_to_topics, не является 0 или 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Сообщение из Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Неизвестное действие вебхук WordPress: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "Неизвестное действие вебхука WordPress: {hook}" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5394,47 +5621,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Необходимо проверить с помощью действительного API-ключа сервера Zulip" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Неверный UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Неверный тип токена" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} не является действительным именем хоста." +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "{hostname} не является корректным именем хоста" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Отсутствует user_id или user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Неверное свойство {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "Неверное свойство {property}" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Данные не в порядке." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Неверные данные." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "Искаженные данные журнала аудита" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Вам необходимо сбросить пароль." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Не хватает параметра id_token" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Неверный OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Нельзя одновременно использовать mobile_flow_otp и desktop_flow_otp." diff --git a/locale/ru/translations.json b/locale/ru/translations.json index d078291cbb..08dc9abca6 100644 --- a/locale/ru/translations.json +++ b/locale/ru/translations.json @@ -1,10 +1,11 @@ { - "%'{file}' exceeds the maximum file size for attachments ({variable} MB).": "%'{file}' превышает максимальный размер файла для файловых приложений ({variable} мб).", + "%'{file}' exceeds the maximum file size for attachments ({variable} MB).": "%'{file}' превышает максимальный размер файла для файловых приложений ({variable} МБ).", "(attached file)": "(прикрепленный файл)", "(forever)": "(навсегда)", "(hidden)": "(скрытый)", "(no description)": "(нет описания)", "(no topic)": "(без темы)", + "(or )": "(или )", "(you)": "(вы)", "({message_retention_days} days)": "({message_retention_days} дней)", "/dark (Switch to the dark theme)": "/dark (Переключить на темную тему)", @@ -17,9 +18,9 @@ "1 week": "1 неделя", "10 days": "10 дней", "10 minutes": "10 минут", - "12-hour clock (5:00 PM)": "12-часовые часы (5:00 PM)", + "12-hour clock (5:00 PM)": "12-часовой формат (5:00 PM)", "2 minutes": "2 минуты", - "24-hour clock (17:00)": "24-часовые часы (17:00)", + "24-hour clock (17:00)": "24-часовой формат (17:00)", "3 days": "3 дня", "30 days": "30 дней", "30 minutes": "30 минут", @@ -35,15 +36,15 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} не подписан на этот канал. Пользователь не будет получать уведомления, пока вы его не подпишете.", "{username} has {number_of_invites_by_user} unexpired invitations.": "У {username} осталось {number_of_invites_by_user} не просроченных приглашений.", "Subscribe": "Подписаться", - "Click here to learn about exporting private streams and messages.": "Нажмите здесь, чтобы узнать больше об экспорте закрытых каналов и сообщений.", - "Upgrade for more space.": "Обновите, чтобы получить больше места.", - " to add a new line": ", чтобы добавить новую строку", + "Click here to learn about exporting private streams and direct messages.": "Нажмите здесь, чтобы узнать больше об экспорте закрытых каналов и личных сообщений.", + "Upgrade for more space.": "Выполните апгрейд, чтобы получить больше места.", + " to add a new line": " для перевода строки", " to send": " для отправки", - " will have the same properties as it did prior to deactivation, including role, owner and stream subscriptions.": " будут иметь те же свойства, что и до деактивации, включая роль, владельца и подписки на канал.", - " will have the same role, stream subscriptions, user group memberships, and other settings and permissions as they did prior to deactivation.": " будут иметь ту же роль, подписки на каналы, членство в группах пользователей и другие настройки и разрешения, что и до деактивации.", + " will have the same properties as it did prior to deactivation, including role, owner and stream subscriptions.": " будет иметь те же свойства, что и до отключения, в том числе роль, владельца и подписки на каналы.", + " will have the same role, stream subscriptions, user group memberships, and other settings and permissions as they did prior to deactivation.": " будут иметь ту же роль, подписки на каналы, членство в группах пользователей и другие настройки и разрешения, что и до отключения.", "A Topic Move already in progress.": "Перемещение темы уже в процессе.", "A deactivated bot cannot send messages, access data, or take any other action.": "Отключенный бот не может посылать сообщения, не имеет доступ к данным и не может совершать какое-либо другое действие.", - "A deactivated emoji will remain visible in existing messages and emoji reactions, but cannot be used on new messages.": "Деактивированные эмодзи останутся видимыми в существующих сообщениях и реакциях эмодзи, но их нельзя использовать в новых сообщениях.", + "A deactivated emoji will remain visible in existing messages and emoji reactions, but cannot be used on new messages.": "Отключенные эмодзи останутся видимыми в существующих сообщениях и реакциях эмодзи, но их нельзя использовать в новых сообщениях.", "A language is marked as 100% translated only if every string in the web, desktop, and mobile apps is translated, including administrative UI and error messages.": "Язык отмечается переведенным на 100% только если все строки в web, настольном и мобильном приложениях переведены, включая интерфейс администратора и сообщения об ошибках.", "A stream needs to have a name": "Канал должен иметь название", "A stream with this name already exists": "Канал с таким названием уже существует", @@ -82,18 +83,21 @@ "Add alert word": "Добавить сигнальное слово", "Add all users": "Добавить всех пользователей", "Add another user...": "Добавить другого пользователя...", + "Add audio call": "", "Add code playground": "Добавить интерактивную среду для кода", + "Add default streams": "Добавить каналы по умолчанию", + "Add email": "Добавить email", "Add emoji": "Добавить эмодзи", "Add emoji reaction": "Добавить эмодзи-реакцию", "Add extra emoji for members of the {realm_name} organization.": "Добавить дополнительные эмодзи для участников организации {realm_name}.", "Add global time": "Добавить глобальное время", "Add linkifier": "Добавить шаблон", "Add members": "Добавить участников", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Добавить участника...", - "Add new default stream": "Добавить новый канал по умолчанию", - "Add new user group": "Добавить новую группы пользователей", + "Add new user group": "Добавить новую группу пользователей", "Add one or more users": "Добавить одного или несколько пользователей", - "Add option": "Добавить опцию", + "Add option": "Добавить вариант", "Add question": "Добавить вопрос", "Add stream": "Добавить канал", "Add streams": "Добавить каналы", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Добавить подписчиков. Используйте название группы пользователей или #название_канала для массового добавления подписчиков.", "Add task": "Добавить задачу", "Add video call": "Добавить видеовызов", + "Add your email to invite other users or convert to a permanent Zulip organization.": "Добавьте ваш адрес электронной почты, чтобы пригласить других участников или преобразовать вашу организацию в Zulip в постоянную.", "Added successfully!": "Добавлено успешно!", "Added successfully.": "Добавление успешно.", "Administrator": "Администратор", @@ -124,6 +129,7 @@ "Alerted messages": "Сообщения с сигналами", "All": "Все", "All direct messages": "Все личные сообщения", + "All groups": "", "All messages": "Все сообщения", "All messages including muted streams": "Все сообщения, включая заглушенные каналы", "All streams": "Все каналы", @@ -136,9 +142,11 @@ "Allow subdomains": "Разрешать поддомены", "Allowed domains": "Разрешенные домены", "Allowed domains: {domains}": "Разрешенные домены: {domains}", + "Already members:": "", "Already not subscribed.": "Уже не подписан.", "Already subscribed to {stream}": "Уже подписан на {stream}", "Already subscribed users:": "Уже подписанные пользователи:", + "Already subscribed.": "", "Always": "Всегда", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API-ключ может быть использован для программного доступа к учетной записи Zulip. Обладающий вашим API-ключом имеет возможность читать ваши сообщения, посылать сообщения от вашего имени и иначе представлять вас в Zulip. Вам следует защищать API-ключ так же, как и ваш пароль.
Мы рекомендуем использовать для ботов специальные учетные записи и API-ключи для доступа к Zulip API, в случае если задача не требует доступа именно к вашей учетной записи.", "An hour ago": "Час назад", @@ -150,10 +158,11 @@ "Archive ?": "Архивировать ?", "Archive stream": "Архивировать канал", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Архивация канала мгновенно отпишет всех его подписчиков. Это действие нельзя будет отменить.", + "Archiving this stream will also disable settings that were configured to use this stream:": "Архивация этого канала отключит настройки, сделанные для его использования:", "Are you sure you want to continue?": "Вы уверены, что хотите продолжить?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Вы уверены что хотите создать канал ''''{stream_name}'''' и подписать {count} пользователей на него?", - "Are you sure you want to deactivate this organization?": "Вы уверены, что хотите деактивировать эту организацию?", - "Are you sure you want to deactivate your account?": "Вы уверены, что хотите деактивировать вашу учетную запись?", + "Are you sure you want to deactivate this organization?": "Вы уверены, что хотите отключить эту организацию?", + "Are you sure you want to deactivate your account?": "Вы уверены, что хотите отключить вашу учетную запись?", "Are you sure you want to delete all drafts? This action cannot be undone.": "Вы уверены, что хотите удалить все черновики? Это действие нельзя будет отменить.", "Are you sure you want to delete your profile picture?": "Вы действительно хотите удалить изображение профиля?", "Are you sure you want to mark all messages as read? This action cannot be undone.": "Вы уверены, что хотите отметить все сообщения как прочитанные? Это сообщение нельзя будет отменить.", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Вы уверены, что хотите повторно отправить приглашение для ?", "Are you sure you want to revoke the invitation to {email}?": "Вы уверены, что хотите отозвать приглашение для {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Вы уверены, что хотите отозвать приглашение по ссылке которое создал {referred_by}?", + "Are you sure you want to revoke this invitation link?": "Вы уверены, что хотите отозвать эту ссылку для приглашения?", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Вы уверены, что хотите отправить @-упоминания для {subscriber_count} подписчиков канала #{stream_name}? Если нет, отредактируйте сообщение, убрав @{wildcard_mention} упоминание.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Вы уверены в том, что хотите снять отметку со всех сообщений в ? Это действие нельзя будет отменить.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Вы уверены, что хотите снять отметку со всех отмеченных сообщений? Это действие нельзя будет отменить.", @@ -176,10 +186,11 @@ "Automatic": "Автоматически", "Automatic (follows system settings)": "Автоматически (в соответствии с настройками системы)", "Automatically mark messages as read": "Автоматически отмечать сообщения как прочитанные", - "Available on Zulip Cloud Standard. Upgrade or request sponsorship to access.": "Доступно на Zulip Cloud Standard. Апгрейд или запросить спонсорство, чтобы получить доступ.", - "Avatar changes are disabled in this organization": "Изменения аватарок отключено в настоящей организации.", + "Available on Zulip Cloud Standard. Upgrade or request sponsorship to access.": "Доступно в Zulip Cloud Standard. Выполните апгрейд или запросите спонсорство, чтобы получить доступ.", + "Avatar changes are disabled in this organization": "Изменения аватарок отключено в этой организации.", "Avatar from Gravatar": "Аватар из Gravatar", "Back to streams": "Назад к каналам", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "Исходный владелец этого бота отключен, поэтому вы станете его новым владельцем.", "Because you are the only organization owner, you cannot deactivate your account.": "Поскольку вы являетесь единственным владельцем организации, вы не можете отключить вашу учетную запись.", "Because you are the only subscriber, this stream will be automatically archived.": "Поскольку вы являетесь единственным подписчиком, данный канал будет автоматически архивирован.", "Billing": "Платежи", @@ -190,8 +201,11 @@ "Bot owner": "Владелец бота", "Bot type": "Тип бота", "Bots": "Боты", - "Browse recent conversations": "Смотреть последние беседы", + "Browse 1 more stream": "Просмотреть еще 1 канал", + "Browse recent conversations": "Просмотреть последние беседы", "Browse streams": "Просмотреть каналы", + "Browse {can_subscribe_stream_count} more streams": "Просмотреть еще {can_subscribe_stream_count} канал/ов", + "Bulleted list": "", "Business": "Бизнес", "Busy": "Занят", "By deactivating your account, you will be logged out immediately.": "Отключив свою учетную запись, вы автоматически выйдете из системы.", @@ -215,9 +229,11 @@ "Clear avatar": "Очистить аватар", "Clear image": "Очистить изображение", "Clear profile picture": "Очистить картинку профиля", - "Click here to reveal.": "Нажмите здесь чтобы открыть.", - "Click on the pencil () icon to edit and reschedule a message.": "Нажмите на значок () карандаша чтобы отредактировать и перенести сообщение.", + "Click here to reveal.": "Нажмите здесь, чтобы открыть.", + "Click on the pencil () icon to edit and reschedule a message.": "Нажмите на значок карандаша (), чтобы отредактировать сообщение или время отправки.", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Для сохранения нажмите вне поля ввода. Мы автоматически уведомим каждого, кто был добавлен или удален.", + "Click to change notifications for this topic.": "Нажмите, чтобы изменить оповещения для этой темы.", + "Click to view edit history.": "Нажмите, чтобы просмотреть историю изменений.", "Click to view or download.": "Нажмите, чтобы посмореть или скачать.", "Close": "Закрыть", "Close modal": "Закрыть модальное окно", @@ -232,24 +248,25 @@ "Commuting": "В дороге", "Compact": "Компактный", "Complete": "Готово", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Заполните профиль организации чтобы брендировать и описать назначение этой организации Zulip. ", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "Заполните ваш профиль организации, отображаемый на страницах регистрации и входа вашей организации.", "Compose message": "Создать сообщение", "Compose your message here": "Введите ваше сообщение здесь", "Compose your message here...": "Введите ваше сообщение здесь...", "Composing messages": "Составление сообщения", - "Configure how Zulip notifies you about new messages.": "Настройте, каким образом Zulip оповещает вас о новых сообщениях.", + "Configure how Zulip notifies you about new messages.": "Настройте оповещения о новых сообщениях Zulip.", "Configure regular expression patterns that will be used to automatically transform any matching text in Zulip messages and topics into links.": "Настройте шаблоны регулярных выражений, которые будут использоваться для автоматического преобразования любого совпадающего текста в сообщениях и темах Zulip в ссылки.", - "Configure the default personal preference settings for new users joining your organization.": "Настроить персональные параметры по умолчаниюдля новых пользователей, присоединившихся к вашей организации.", + "Configure the default personal preference settings for new users joining your organization.": "Настроить персональные параметры по умолчанию для новых пользователей, присоединяющихся к вашей организации.", "Configure the authentication methods for your organization.": "Настроить метод аутентификации для вашей организации", "Configure the default streams new users are subscribed to when joining your organization.": "Настроить каналы по умолчанию, на которые автоматически будут подписаны новые пользователи вашей организации.", "Confirm": "Подтвердить", "Consider searching all public streams.": "Попробуйте искать во всех открытых каналах.", "Contact a moderator to resolve this topic.": "Обратитесь к модератору, чтобы отметить тему как решенную.", "Contact a moderator to unresolve this topic.": "Обратитесь к модератору, чтобы отметить тему как нерешенную.", - "Contact support": "Контактировать поддержку", + "Contact support": "Обратиться в службу поддержки", "Convert emoticons before sending (:) becomes 😃)": "Превращать эмодзи перед отправкой (:) становится 😃)", "Cookie Bot": "Cookie-бот", "Copied!": "Скопировано!", + "Copy URL": "", "Copy address": "Скопировать адрес", "Copy and close": "Скопировать и закрыть", "Copy code": "Скопировать код", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "В данный момент отображаются все сообщения.", "Currently viewing the entire stream.": "В данный момент отображается весь канал.", "Custom": "Свое", + "Custom URL": "", "Custom emoji": "Дополнительные эмодзи", "Custom language: {query}": "Другой язык: {query}", "Custom linkifier added!": "Дополнительный шаблон ссылок добавлен!", @@ -283,7 +301,7 @@ "DIRECT MESSAGES": "ЛИЧНЫЕ СООБЩЕНИЯ", "DM": "ЛС", "DMs, mentions, and alerts": "Личные сообщения, упоминания и сигналы", - "Dark": "Темный", + "Dark": "Темная", "Dark theme": "Темная тема", "Dark theme logo": "Логотип для темной темы", "Data exports": "Выгрузка данных", @@ -302,10 +320,12 @@ "Deactivated": "Отключено", "Deactivated users": "Отключенные пользователи", "December": "Декабрь", + "Default": "По умолчанию", "Default for stream": "По умолчанию для канала", "Default is {language}. Use 'text' to disable highlighting.": "По умолчанию используется {language}. Используйте 'text', чтобы отключить подсветку синтаксиса.", "Default language for code blocks": "Язык по умолчанию для блоков кода", "Default streams": "Каналы по умолчанию", + "Default streams for new users cannot be made private.": "Каналы по умолчанию для новых пользователей нельзя делать закрытыми.", "Default streams for this organization": "Канал по умолчанию для этой организации.", "Default user settings": "Настройки пользователя по умолчанию", "Default view": "Представление по умолчанию", @@ -314,12 +334,14 @@ "Delete": "Удалить", "Delete alert word": "Удалить сигнальное слово", "Delete all drafts": "Удалить все черновики", + "Delete all selected drafts": "Удалить все выбранные черновики", "Delete code playground?": "Удалить интерактивную среду для кода?", "Delete custom profile field?": "Удалить дополнительное поле профиля?", "Delete data export?": "Удалить выгрузку данных?", "Delete draft": "Удалить черновик", "Delete file": "Удалить файл", "Delete file?": "Удалить файл?", + "Delete group": "", "Delete icon": "Удалить иконку", "Delete linkifier?": "Удалить шаблон ссылок?", "Delete logo": "Удалить логотоп", @@ -331,8 +353,8 @@ "Delete topic": "Удалить тему", "Delete {user_group_name}?": "Удалить {user_group_name}?", "Deleted": "Удалено", - "Deleted option:": "Удаленная опция:", - "Deleted options:": "Удаленные опции:", + "Deleted option:": "Удаленный вариант:", + "Deleted options:": "Удаленные варианты:", "Deleted successfully!": "Удалено успешно!", "Deleting a message permanently removes it for everyone.": "Сообщение будет безвозвратно удалено для всех пользователей.", "Deleting a topic will immediately remove it and its messages for everyone. Other users may find this confusing, especially if they had received an email or push notification related to the deleted messages.": "Удаление темы немедленно удалит саму тему и все ее сообщения для каждого пользователя. Это может смутить некоторых пользователей, особенно, если они получили оповещение по электронной почте или push-оповещение об этих сообщениях.", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "В зависимости от размера вашей организации, экспорт может занять от нескольких секунд до часа.", "Deprecation notice": "Уведомление об удалении", "Description": "Описание", + "Deselect draft": "Снять выделение с черновика", "Desktop": "Рабочий стол", "Desktop & mobile apps": "Приложения для компьютера и смартфонов", "Desktop message notifications": "Всплывающие оповещения", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Подробная документация по форматированию сообщений", "Detailed search filters documentation": "Подробная документация по фильтрам поиска", "Direct message": "Личное сообщение", + "Direct message to me": "", "Direct messages": "Личные сообщения", "Direct messages and mentions": "Личные сообщения и упоминания", "Direct messages are disabled in this organization.": "Личные сообщения в этой организации отключены.", "Direct messages disabled": "Личные сообщения отключены", + "Disable": "Отключить", "Disable notifications?": "Отключить оповещения?", "Disabled": "Отключен", "Discard": "Сбросить", @@ -360,15 +385,15 @@ "Display my availability to other users": "Показывать мою доступность другим пользователям", "Display names of reacting users when few users have reacted to a message": "Отображать имена пользователей, которые отреагировали на сообщение, если это сделало несколько пользователей", "Display on user card": "Отображать в карточке пользователя", - "Display settings": "Настройки отображения", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "Вы действительно хотите переместить последние сообщения: {total_messages_allowed_to_move, plural, one {message} other {# messages}}?", - "Do you want to add everyone?": "Вы хотите добавить каждого?", + "Do you want to add everyone?": "Вы хотите добавить всех?", + "Do you want to mark them all as read?": "", "Domain": "Домен", "Don’t allow disposable email addresses": "Не разрешать одноразовые адреса электронной почты", "Download": "Скачать", "Download .zuliprc": "Скачать .zuliprc", "Download botserverrc": "Скачать botserverrc", - "Download config of all active outgoing webhook bots in Zulip Botserver format.": "Загрузить конфигурацию всех исходящих вебхук-ботов в формате Zulip Botserver", + "Download config of all active outgoing webhook bots in Zulip Botserver format.": "Загрузить конфигурацию всех исходящих вебхук-ботов в формате Zulip Botserver.", "Download file": "Скачать файл", "Download the latest version.": "Скачайте последнюю версию.", "Download zuliprc": "Скачать zuliprc", @@ -388,7 +413,7 @@ "Edit custom profile field": "Редактировать дополнительное поле профиля", "Edit linkfiers": "Редактировать фильтры URL", "Edit message": "Редактировать сообщение", - "Edit or reschedule message": "Редактировать сообщение или изменить время отправки", + "Edit profile": "", "Edit selected draft": "Редактировать выбранный черновик", "Edit selected message or view source": "Редактировать выбранное сообщение или посмотреть исходный текст", "Edit status": "Редактировать статус", @@ -398,7 +423,6 @@ "Edit your last message": "Редактировать свое последнее сообщение", "Edit your profile": "Редактировать свой профиль", "Edit {group_name}": "Редактировать {group_name}", - "Edited ({last_edit_timestr})": "Изменено ({last_edit_timestr})", "Edited by {full_name}": "Изменено пользователем {full_name}", "Education (for-profit)": "Образование (коммерческое)", "Education (non-profit)": "Образование (некоммерческое)", @@ -421,7 +445,7 @@ "Enabled": "Включен", "End of results from your history.": "Конец результатов поиска из вашей истории.", "Endpoint URL": "URL конечной точки", - "Enter sends when composing a message": "Клавиша ввода отправляет сообщение, когда вы его пишете", + "Enter sends when composing a message": "Клавиша Enter отправляет набираемое сообщение", "Error": "Ошибка", "Error adding subscription": "Ошибка добавления подписки", "Error checking subscription.": "Ошибка проверки подписки.", @@ -438,8 +462,8 @@ "Error removing user from this group.": "Ошибка при удалении пользователя из этой группы.", "Error removing user from this stream.": "Ошибка удаления пользователя с канала.", "Error saving edit": "Ошибка при сохранении изменений", - "Error: Cannot deactivate the only organization owner.": "Ошибка: невозможно деактивировать единственного владельца организации. ", - "Error: Cannot deactivate the only user. You can deactivate the whole organization though in your organization profile settings.": "Ошибка: Нельзя деактивировать единственного пользователя. Вы можете деактивировать всю организацию в настройках профиля организации.", + "Error: Cannot deactivate the only organization owner.": "Ошибка: невозможно отключить единственного владельца организации. ", + "Error: Cannot deactivate the only user. You can deactivate the whole organization though in your organization profile settings.": "Ошибка: нельзя отключить единственного пользователя. Тем не менее, вы можете отключить всю организацию в настройках профиля организации.", "Escape key navigates to default view": "Клавиша Escape переводит к виду по умолчанию ", "Estimated messages per week": "Примерно сообщений в неделю", "Event or conference": "Событие или конференция", @@ -461,12 +485,13 @@ "External account type": "Тип внешнего аккаунта", "External link": "Внешняя ссылка", "Failed": "Не удалось", + "Failed adding one or more streams.": "Не удалось добавить одну или несколько тем.", "Failed to create video call.": "Не удалось создать видеозвонок.", "Failed to generate preview": "Не удалось создать эскиз", "Failed to upload %'{file}'": "Не удалось загрузить %'{file}'", "Failed!": "Не удалось!", "Failed: A custom emoji with this name already exists.": "Ошибка: эмодзи с таким именем уже существует.", - "Failed: Emoji name is required.": "Ошибка: Необходимо название эмодзи.", + "Failed: Emoji name is required.": "Ошибка: необходимо название эмодзи.", "Failed: There is a default emoji with this name. Only administrators can override default emoji.": "Ошибка: уже существует встроенный эмодзи с таким названием. Только администраторы могут переопределять встроенные эмодзи.", "February": "Февраль", "Field choices": "Выбор поля", @@ -478,18 +503,16 @@ "Filter": "Фильтр", "Filter bots": "Фильтр ботов", "Filter by category": "Фильтр по категориям", - "Filter code playgrounds": "Фильтр интерактивных сред", - "Filter deactivated users": "Фильтр отключенных пользователей", - "Filter default streams": "Фильтровать каналы по умолчанию", + "Filter code playgrounds": "Фильтр сред кода", + "Filter deactivated users": "Фильтр отключенных", + "Filter default streams": "Фильтр каналов", "Filter emoji": "Фильтровать эмодзи", "Filter exports": "Отфильтровать", "Filter groups": "Фильтр групп", "Filter invites": "Фильтр приглашений", - "Filter languages": "Фильтр языков", "Filter linkifiers": "Фильтр шаблонов", "Filter members": "Фильтр участников", - "Filter muted users": "Фильтр заглушенных пользователей", - "Filter roles": "Фильтр ролей", + "Filter muted users": "Фильтр заглушенных", "Filter streams": "Фильтр каналов", "Filter subscribers": "Фильтр подписчиков", "Filter topics": "Фильтр тем", @@ -500,6 +523,9 @@ "First message": "Первое сообщение", "First time? Read our guidelines for creating and naming streams.": "В первый раз? Прочтите наши рекомендации по созданию и именованию каналов.", "First time? Read our guidelines for creating user groups.": "В первый раз? Почитайте наши рекомендации по созданию групп пользователей.", + "Follow": "Отслеживать", + "Followed": "Отслеживаемые", + "Followed topics": "Отслеживаемые темы", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "К примеру, для настройки интерактивной среды для блоков кода Python вы можете установить:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "Дополнительные примеры и технические подробности см. в справочной документации по добавлению интерактивных сред.", "For more examples, see the help center documentation on adding linkifiers.": "Дополнительные примеры см. в справочной документации по добавлению шаблонов ссылок.", @@ -510,6 +536,7 @@ "GIPHY attribution": "Атрибуция GIPHY", "GIPHY integration": "Интеграция с GIPHY", "General": "Общее", + "Generate URL for an integration": "", "Generate email address": "Создать адрес электронной почты", "Generate invite link": "Создать ссылку для приглашения", "Generate new API key": "Сгенерировать новый API-ключ", @@ -540,16 +567,20 @@ "Hide password": "Скрыть пароль", "Hide starred message count": "Скрыть количество отмеченных сообщений", "High contrast mode": "Высоко-контрастный режим", - "Hint": "Совет", + "Hint": "Подсказка", "Hint (up to 80 characters)": "Подсказка (до 80 символов)", + "How would you like to invite users?": "Как вы хотите пригласить пользователей?", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "Тем не менее, будет прекращена подписка на закрытые каналы, на которые вы не подписаны.", "Humans": "Люди", "Idle": "Бездействует", "If you don't know your password, you can reset it.": "Если вы не знаете свой пароль, вы можете его сбросить.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "Если вы еще не актуализировали свое имя, это целесообразно сделать перед тем как приглашать других пользователей присоединиться. ", "Ignored deactivated users:": "Проигнорированы отключенные пользователи:", "Image": "Изображение", "In a meeting": "На встрече", "Inactive": "Неактивный", "Inactive bots": "Неактивные боты", + "Inbox": "", "Include DMs": "Включить ЛС", "Include content of direct messages in desktop notifications": "Получать содержание личных сообщений во всплывающих оповещениях", "Include message content in message notification emails": "Включить содержимое сообщения в уведомление по электронной почте", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Входящий вебхук может только отправлять сообщения.", "Initiate a search": "Начать поиск", "Insert new line": "Вставить новую строку", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Интеграции", "Interface": "Интерфейс", "Invalid URL": "Неверный URL", @@ -581,6 +614,8 @@ "Inviting...": "Приглашаю...", "Italic": "Курсив", "January": "Январь", + "Jitsi server URL": "", + "Join audio call.": "Присоединиться к звонку.", "Join video call.": "Присоединиться к видеовызову.", "Join {realm_name}": "Вступить в {realm_name}", "Joined": "Подключился", @@ -599,8 +634,10 @@ "Last 30 days": "Последние 30 дней", "Last 6 months": "Последние 6 месяцев", "Last active": "Последняя активность", + "Last edited {last_edit_timestr}": "Последняя правка {last_edit_timestr}", "Last message": "Последнее сообщение", "Last modified": "Последнее изменение", + "Last moved {last_edit_timestr}": "Последнее перемещение {last_edit_timestr}", "Learn more": "Узнать больше", "Learn more about mentions here.": "Узнайте больше об упоминаниях тут.", "Learn more about starring messages here.": "Узнайте больше об отметке сообщений тут.", @@ -608,7 +645,7 @@ "Let others see when I've read messages": "Показывать другим, когда сообщения мною прочитаны", "Let recipients see when I'm typing direct messages": "Показывать получателям, когда я печатаю личные сообщения", "Let subscribers see when I'm typing messages in streams": "Показывать подписчикам, когда я печатаю сообщения в канале", - "Light": "Светлый", + "Light": "Светлая", "Light theme": "Светлая тема", "Light theme logo": "Логотип для светлой темы", "Link": "Ссылка", @@ -621,8 +658,9 @@ "Log in": "Войти", "Log in to browse more streams": "Войдите, чтобы видеть больше каналов", "Log out": "Выйти", - "Looking for our integrations or API documentation?": "Ищите нашу документацию по интеграции или API?", + "Looking for our integrations or API documentation?": "Ищете нашу документацию по интеграции или API?", "MOVED": "ПЕРЕМЕЩЕНО", + "Main menu": "Основное меню", "Manage bot": "Управлять ботом", "Manage streams": "Управление каналами", "Manage this bot": "Управлять ботом", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Упомянуть время с учетом часовых поясов", "Mentioned in": "Упомянут в", "Mentions": "Упоминания", - "Menu": "Меню", "Menus": "Меню", "Message #{stream_name}": "Написать в #{stream_name}", "Message #{stream_name} > {topic_name}": "Написать в #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Написать {recipient_names}", "Message {recipient_name} ({recipient_status})": "Написать {recipient_name} ({recipient_status})", "Messages in all public streams": "Сообщения во всех открытых каналах", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "Сообщения не будут автоматически отмечаться прочитанными, потому что это не вид беседы. Изменить настройки", "Messages will not be automatically marked as read. Change setting": "Сообщения не будут автоматически отмечаться прочитанными. Изменить настройки", "Mobile": "Мобильный", @@ -681,11 +720,11 @@ "Move some messages?": "Переместить некоторые сообщения?", "Move this and all following messages in this topic": "Переместить это и все следующие сообщения в данной теме", "Move topic": "Переместить тему", - "Moved ({last_edit_timestr})": "Перемещено ({last_edit_timestr})", "Moved by {full_name}": "Перемещено пользователем {full_name}", "Moving messages": "Перемещение сообщений", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Должен быть приглашен подписчиком; новые подписчики могут видеть сообщения, отправленные только после присоединения; скрыт от пользователей без прав администратора", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Должен быть приглашен подписчиком; новые подписчики могут видеть всю историю сообщений; скрыт от пользователей без прав администратора", + "Mute": "Заглушить", "Mute stream": "Заглушить канал", "Mute this user": "Заглушить этого пользователя", "Mute topic": "Заглушить тему", @@ -729,43 +768,47 @@ "New direct message": "Новое личное сообщение", "New email": "Новый адрес электронной почты", "New message": "Новое сообщение", - "New option": "Новая опция", + "New option": "Новый вариант", "New password": "Новый пароль", "New password is too weak": "Новый пароль слишком простой", "New stream announcements": "Объявления о новых каналах", "New stream message": "Новое сообщение", + "New stream notifications": "Оповещения о новых каналах", "New task": "Новая задача", "New topic": "Новая тема", "New user announcements": "Объявления о новых пользователях", + "New user notifications": "Оповещения о новых пользователях", "Next message": "Следующее сообщение", "Next unread direct message": "Следующее непрочитанное личное сообщение", "Next unread topic": "Следующая непрочитанная тема", - "Next week": "Следующая неделя", "No bots match your current filter.": "Нет ботов, подпадающих под текущий фильтр.", + "No conversations match your filters.": "", "No custom emoji.": "Нет дополнительных эмодзи.", + "No custom profile field configured for this organization.": "Для данной организации не заданы дополнительные поля профиля.", "No default streams match you current filter.": "Нет каналов по умолчанию, подпадающих под текущий фильтр.", "No description.": "Нет описания.", + "No drafts selected": "Нет выделенных черновиков", "No drafts.": "Нет черновиков.", "No exports.": "Нет выгрузок данных.", "No invites match your current filter.": "Нет приглашений, подпадающих под текущий фильтр.", "No language set": "Язык не определен", "No linkifiers set.": "Шаблоны ссылок не заданы.", + "No matching results": "", "No matching users.": "Нет совпадающих пользователей.", "No one has read this message yet.": "Никто еще не прочитал это сообщение.", "No owner": "Без владельца", "No playgrounds configured.": "Нет настроенных интерактивных сред.", "No restrictions": "Нет ограничений", "No scheduled messages.": "Нет запланированных сообщений.", - "No search results": "Ничего не найдено", "No search results.": "Ничего не найдено.", "No stream subscriptions.": "Нет подписок на каналы.", "No streams": "Нет каналов", "No topics are marked as resolved.": "Нет тем, отмеченных как решенные.", - "No topics match your current filter.": "Нет тем, подпадающих под текущий фильтр.", "No user group subscriptions.": "Нет подписок на группы пользователей.", "No user groups": "Нет групп пользователей", "No user to subscribe.": "Нет пользователей для подписки.", - "No users match your current filter.": "Нет пользователей, подпадающих под текущий фильтр.", + "No users match your current filter.": "Нет пользователей, соответствующих текущему фильтру.", + "No users to add.": "", "No, I'll catch up.": "Спасибо, я сам.", "Nobody": "Никто", "Nobody in this Zulip organization will be able to see this email address.": "Никто в этой организации Zulip не сможет видеть данный адрес электронной почты.", @@ -777,13 +820,14 @@ "Notification of account deactivation on {realm_name}": "Оповещение об отключении учетной записи на {realm_name}", "Notification settings": "Настройки оповещений", "Notification sound": "Звук оповещения", - "Notification triggers": "Триггер оповещений", + "Notification triggers": "Варианты оповещений", "Notifications": "Оповещения", "Notifications for @all/@everyone mentions": "Оповещение про упоминание всех через @all/@everyone", "Notify recipients": "Оповестить получателей", "Notify stream": "Оповестить канал", "Notify this user by email?": "Уведомить этого пользователя по электронной почте?", "November": "Ноябрь", + "Numbered list": "", "October": "Октябрь", "Old password": "Старый пароль", "Once you leave this group, you will not be able to rejoin.": "Если вы покинете эту группу, вы не сможете вновь к ней присоединиться.", @@ -800,17 +844,18 @@ "Only owners can change these settings.": "Только владельцы могут менять эти настройки.", "Only stream members can add users to a private stream": "Только подписчики канала могут добавлять пользователей к закрытому каналу.", "Only stream members can add users to a private stream.": "Только участники канала могут добавлять пользователей к закрытому каналу.", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "Только подписчики могут иметь доступ или присоединяться к закрытым каналам, поэтому вы потеряете доступ к этому каналу, если преобразуете его в закрытый не будучи подписанными на него.", "Only subscribers to this stream can edit stream permissions.": "Только подписчики данного канала могут изменять его разрешения.", "Open": "Открыть", "Open message menu": "Открыть меню сообщения", "Open reactions menu": "Открыть меню реакций", - "Open-source project": "Проект с открытым исходником", - "Option already present.": "Опция уже присутствует.", + "Open-source project": "Проект с открытым исходным кодом", + "Option already present.": "Вариант уже перечислен.", "Optional": "Необязательно", "Organization": "Организация", "Organization administrators": "Администраторы организации", "Organization administrators can change the announcement stream in the organization settings.": "Администраторы организации могут изменить канал для объявлений в настройках организации.", - "Organization administrators can reactivate deactivated users.": "Администраторы организации могут вновь активировать деактивированных пользователей.", + "Organization administrators can reactivate deactivated users.": "Администраторы организации могут вновь активировать отключенных пользователей.", "Organization description": "Описание организации.", "Organization logo": "Логотип организации", "Organization members can join (guests must be invited by a subscriber); anyone on the Internet can view complete message history without creating an account": "Участники организации могут подписаться (гости должны быть приглашены подписчиком); любому пользователю интернета доступна полная история сообщений, не создавая учетной записи", @@ -847,7 +892,7 @@ "Pin stream to top of left sidebar": "Закрепить наверху в списке каналов", "Pinned": "Закреплены", "Plans and pricing": "Тарифы и цены", - "Play sound": "Проиграть звук", + "Play sound": "Воспроизвести звук", "Please contact support for an exception or add users with a reusable invite link.": "Пожалуйста, в качестве исключениясвяжитесь с поддержкой или добавьте пользователей с помощью многократно используемой ссылки приглашения.", "Please ask a billing administrator to increase the number of licenses or deactivate inactive users, and try again.": "Попросите администратора биллинга увеличить количество лицензий илиотключить неактивных пользователей, и повторите попытку.", "Please choose a new password": "Пожалуйста, выберите новый пароль", @@ -857,8 +902,9 @@ "Please re-enter your password to confirm your identity.": "Введите пароль повторно, чтобы подтвердить свою личность.", "Please specify a stream.": "Пожалуйста, укажите канал.", "Please specify at least one valid recipient.": "Укажите хотя бы одного действительного получателя.", - "Political group": "Политическая группировка", + "Political group": "Политическая группа", "Posted by {full_name}": "Написано пользователем {full_name}", + "Preferences": "Предпочтения", "Press > for list of topics": "Нажмите > для списка тем", "Prevent users from changing their avatar": "Запретить пользователям изменять свой аватар", "Prevent users from changing their email address": "Запретить пользователям изменять свой адрес электронной почты", @@ -869,6 +915,7 @@ "Previous message": "Предыдущее сообщение", "Privacy": "Безопасность", "Privacy settings": "Настройки конфиденциальности", + "Private streams cannot be default streams for new users.": "Закрытые каналы не могут быть каналами по умолчанию для новых пользователей. ", "Private, protected history": "Закрытый, защищенная история переписки", "Private, shared history": "Закрытый, открытая история переписки", "Profile": "Профиль", @@ -883,6 +930,7 @@ "Reactivate bot": "Включить бота", "Reactivate this bot": "Включить этот бот", "Reactivate this user": "Повторно активировать этого пользователя", + "Reactivate user": "", "Reactivate {name}": "Повторно активировать {name}", "Read receipts": "Уведомления о прочтении", "Read receipts are currently disabled in this organization.": "Уведомления о прочтении в настоящее время отключены в этой организации.", @@ -903,7 +951,7 @@ "Reply to selected message": "Ответить на выбранное сообщение", "Request education pricing": "Запросить стоимость обучения", "Request sponsorship": "Запросить спонсорство", - "Requesting user": "Запрашиваем пользователя", + "Requesting user": "Инициатор", "Require topics in stream messages": "Требовать тему в сообщениях канала", "Research": "Исследование", "Resend": "Переслать", @@ -930,6 +978,7 @@ "Saved as draft": "Сохранено в черновики", "Saved. Please reload for the change to take effect.": "Сохранено. Пожалуйста перезагрузите, чтобы изменения вступили в силу.", "Saving": "Сохранение", + "Schedule for {deliver_at}": "Запланировать на {deliver_at}", "Schedule for {formatted_send_later_time}": "Запланировать на {formatted_send_later_time}", "Schedule message": "Запланировать сообщение", "Scheduled messages": "Запланированные сообщения", @@ -948,10 +997,15 @@ "See how to configure email.": "Узнайте, как настроить электронную почту.", "Select a stream": "Выберите канал", "Select a stream below or change topic name.": "Выберите ниже канал или измените название темы.", - "Select date and time": "Выбрать дату и время", + "Select a stream to subscribe": "", + "Select all drafts": "Отметить все черновики", + "Select draft": "Выберите черновик", "Select emoji": "Выберите эмодзи", "Select language": "Выберите язык", + "Select stream": "Выберите канал", "Send": "Отправить", + "Send all notifications to a single topic": "", + "Send an email": "Отправить электронное письмо", "Send automated notice to new topic": "Автоматически посылать уведомление в новую тему", "Send automated notice to old topic": "Автоматически посылать уведомление в старую тему", "Send digest emails when I'm away": "Отправлять дайджест на почту, когда меня нет", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Показать предпросмотр загруженных изображений и ссылок на них", "Show starred message count": "Показать количество избранных сообщений", "Show status text": "Показать текст статуса", + "Show unread counts for": "", "Show/change your API key": "Показать/изменить ваш API-ключ", "Sign up": "Зарегистрироваться", "Silent mentions do not trigger notifications.": "Беззвучные упоминания не вызывают оповещения. ", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Сортировка по предполагаемому еженедельному трафику", "Sort by name": "Сортировка по имени", "Sort by number of subscribers": "Сортировка по количеству подписчиков", + "Sort by unread message count": "", "Spoiler": "Спойлер", "Star": "Отметить", "Star selected message": "Отметить выбранное сообщение", @@ -1022,10 +1078,12 @@ "Streams they should join": "Каналы, к которым они должны присоединиться", "Subject": "Тема", "Subscribe": "Подписаться", - "Subscribe them": "Подписать", + "Subscribe them": "Подписать их", "Subscribe to/unsubscribe from selected stream": "Подписаться/отписаться от выбранного канала", + "Subscribe {full_name} to streams": "", "Subscribed": "Подписан", "Subscribed streams": "Подписка на каналы", + "Subscribed successfully!": "Подписан успешно!", "Subscriber count": "Количество подписчиков", "Subscribers": "Подписчики", "Successfully subscribed user:": "Успешно подписан пользователь:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Ни одного сигнального слова ещё не было добавлено.", "There are no messages here.": "Здесь нет сообщений.", "There are no streams you can view in this organization.": "В этой организации нет каналов, которые вы можете просматривать.", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Уже существует встроенный эмодзи с таким названием. Вы хотите привязать свой эмодзи к этому названию? Название :{emoji_name}: больше не будет отображать встроенный эмодзи.", "They administer the following bots:": "Пользователь управляет следующими ботами:", "This Zulip server is running an old version and should be upgraded.": "Сервер Zulip работает на старой версии и должен быть обновлен.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "К этой беседе нет публичного доступа.", "This is what a Zulip notification looks like.": "Вот так выглядят оповещения Zulip.", "This message could not be sent at the scheduled time.": "Это сообщение не может быть отправлено в запланированное время.", - "This message is no longer scheduled for {deliver_at}.": "Это сообщение больше не запланировано на {deliver_at}.", + "This message is no longer scheduled to be sent.": "Отправка этого сообщения больше не планируется.", "This message was hidden because you have muted the sender.": "Это сообщение было скрыто, т.к. вы заглушили отправителя.", "This organization is configured so that administrators and moderators can add custom emoji.": "Настройки организации позволяют лишь администраторам и модераторам добавлять дополнительные эмодзи.", "This organization is configured so that administrators and moderators can modify user groups.": "Настройки организации позволяют лишь администраторам и модераторам изменять группы пользователей.", @@ -1085,7 +1144,7 @@ "This organization is configured to restrict editing of message content to {minutes_to_edit} minutes after it is sent.": "В этой организации запрещено редактировать сообщение через {minutes_to_edit} минут после его отправки.", "This stream does not exist or is private.": "Этот канал не существует или является закрытым.", "This stream does not yet have a description.": "У этого канала еще нет описания.", - "This stream has been deactivated": "Этот канал был деактивирован", + "This stream has been deactivated": "Этот канал был отключен", "This stream has {count} subscribers.": "В этом канале {count} подписчиков.", "This user does not exist!": "Нет такого пользователя!", "This user has been deactivated.": "Этот пользователь был отключен.", @@ -1103,8 +1162,7 @@ "Time zone": "Часовой пояс", "Time's up!": "Время вышло!", "Tip: You can also send \"/poll Some question\"": "Совет: вы также можете начать голосование через \"/poll какой-либо вопрос\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Чтобы добавить подсветку синтаксиса многострочного блока кода, добавьте для его языка первое короткое имя Pygments после первого набора обратных кавычек. Также вы можете создать блок кода, сделав в каждой строке отступ в 4 пробела.", - "To invite users, please increase the number of licenses or deactivate inactive users.": "Чтобы пригласить пользователей, увеличьте количество лицензий илиотключите неактивных пользователей.", + "To invite users, please increase the number of licenses or deactivate inactive users.": "Чтобы пригласить пользователей, увеличьте количество лицензий или отключите неактивных пользователей.", "To preserve your reading state, this view does not mark messages as read.": "Чтобы сохранить вашу последовательность чтения сообщений, в этом режиме просмотра сообщения не отмечаются как прочитанные.", "Today": "Сегодня", "Today at {time}": "Сегодня {time}", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Переключить подписку", "Toggle the gear menu": "Переключить меню шестеренки", "Toggle topic mute": "Заглушить тему", - "Tomorrow": "Завтра", "Tomorrow at {time}": "Завтра в {time}", "Topic": "Тема", "Topic muted": "Тема заглушена", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Отключить режим невидимости", "Two factor authentication": "Двухфакторная аутентификация", "Type": "Тип", + "URL": "Ссылка", + "URL for your integration": "", "URL pattern": "Шаблон URL", - "URL prefix": "Префикс URL", "URL template": "Шаблон URL", "USERS": "ПОЛЬЗОВАТЕЛИ", "Uncheck all": "Снять все отметки", @@ -1139,6 +1197,7 @@ "Unmute this user": "Включить этого пользователя", "Unmute topic": "Включить тему", "Unmuted": "Включенный", + "Unmuted streams and topics": "", "Unpin stream from top": "Открепить канал сверху", "Unread": "Непрочитанные", "Unread count badge (appears in desktop sidebar and browser tab)": "Значок счетчика непрочитанных сообщений (появляется на боковой панели рабочего стола и на вкладке браузера)", @@ -1152,7 +1211,7 @@ "Unsubscribe": "Отписаться", "Unsubscribe from ": "Отписаться от ", "Unsubscribed successfully!": "Отписан успешно!", - "Up to {time_limit} after posting": "До {time_limit} после публикации", + "Up to {time_limit} after posting": "Не более, чем {time_limit} после публикации", "Update successful: Subdomains allowed for {domain}": "Обновлено успешно: поддомены разрешены для {domain}", "Update successful: Subdomains no longer allowed for {domain}": "Обновлено успешно: поддомены больше не разрешены для {domain}", "Upgrade to the latest release": "Обновление до последней версии", @@ -1182,7 +1241,7 @@ "User group successfully created!": "Группа успешно создана!", "User groups": "Группы пользователей", "User groups allow you to mention multiple users at once. When you mention a user group, everyone in the group is notified as if they were individually mentioned.": "Группы пользователей позволяют вам упоминать несколько пользователей одновременно. Когда вы упоминаете группу пользователей, все в этой группе получат оповещение, как если бы они были упомянуты индивидуально.", - "User identity": "Идентификатор пользователя", + "User identity": "Идентификация пользователя", "User is already not subscribed.": "Пользователь уже отписан.", "User is deactivated": "Пользователь отключен", "User list": "Пользователи", @@ -1199,7 +1258,7 @@ "View all streams": "Просмотреть все каналы", "View direct messages": "Показать личные сообщения", "View drafts": "Показать черновики", - "View edit history": "Показать историю редактирования", + "View edit and move history": "Просмотреть, редактировать и переместить историю", "View file": "Показать файл", "View in playground": "Показать в интерактивной среде", "View in {name}": "Показать в {name}", @@ -1223,13 +1282,14 @@ "Warning: #{stream_name} is a private stream.": "Внимание: #{stream_name} — это закрытый канал.", "We are about to have a poll. Please wait for the question.": "У нас будет голосование. Пожалуйста, подождите, пока появится вопрос.", "We strongly recommend enabling desktop notifications. They help Zulip keep your team connected.": "Мы настоятельно рекомендуем включить всплывающие уведомления. Они помогут вашей команде оставаться на связи.", - "We've replaced the \"{originalHotkey}\" hotkey with \"{replacementHotkey}\" to make this common shortcut easier to trigger.": "Мы заменили горячие клавиши '{originalHotkey}' на '{replacementHotkey}' чтобы упростить использование этого сокращения.", + "We've replaced the \"{originalHotkey}\" hotkey with \"{replacementHotkey}\" to make this common shortcut easier to trigger.": "Мы заменили горячие клавиши '{originalHotkey}' на '{replacementHotkey}', чтобы упростить использование этого сокращения.", "Web-public": "Открыто в сети", "Wednesday": "Среда", "Week of {date}": "Неделя {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Рады видеть вас снова! У вас {unread_msgs_count} непрочитанных сообщений. Хотите отметить их как прочитанные?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Какое местоимение должны использовать люди обращаясь к вам?", - "When you deactivate , they will be immediately logged out.": "Если вы деактивируете , то это приведет к мгновенному выходу из системы.", + "When you deactivate , they will be immediately logged out.": "Если вы отключите , для них немедленно будет выполнен выход из системы.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Будут ли подстановочные упоминания, такие как @all, рассматриваться как упоминания для оповещений.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Какие части электронной почты следует включать в сообщения Zulip, отправляемые в канал?", "Who can access the stream?": "Кто имеет доступ к каналу?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Кто имеет право создавать и управлять группами пользователей", "Who can create private streams": "Кто может создавать закрытые каналы", "Who can create public streams": "Кто может создавать открытые каналы", + "Who can create reusable invitation links": "Кто может создавать повторно используемые ссылки для приглашения", "Who can create web-public streams": "Кто может создавать открытые веб-каналы", "Who can delete their own messages": "Кто может удалять свои сообщения", - "Who can invite users to this organization": "Кто может приглашать пользователей в эту организацию", "Who can move messages to another stream": "Кто может перемещать сообщения в другой канал", "Who can move messages to another topic": "Кто может перемещать сообщения в другую тему", "Who can post to the stream?": "Кто может писать сообщения в канале?", + "Who can send email invitations to new users": "Кто может отправлять приглашения по почте новым пользователям", "Who can unsubscribe others from this stream?": "Кто может отписать других от данного канала?", "Who can use @all/@everyone mentions in large streams": "Кто имеет право использовать упоминания @all/@everyone в больших каналах", "Who can use direct messages": "Кто может использовать личные сообщения", @@ -1268,20 +1329,23 @@ "You and": "Вы и", "You and {display_reply_to}": "Вы и {display_reply_to}", "You and {recipients}": "Вы и {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "Вы собираетесь отключить все оповещения о личных сообщениях, @‑упоминания и сигналы, это может привести к тому, что вы пропустите сообщения, требующие оперативной реакции. Если вы хотите временно отключить все оповещения, рассмотрите в качестве альтернативы включение режима \"Не беспокоить\".", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "Вы собираетесь отключить все оповещения о личных сообщениях, @‑упоминания и сигналы, это может привести к тому, что вы пропустите сообщения, требующие оперативной реакции. Если вы хотите временно отключить все оповещения, рассмотрите в качестве альтернативы включение режима \"Не беспокоить\".", "You are not allowed to send direct messages in this organization.": "Вам не разрешена отправка личных сообщений в данной организации.", "You are not currently subscribed to this stream.": "Вы не подписаны на этот канал.", "You are not subscribed to any streams.": "Вы не подписаны ни на один канал.", "You are not subscribed to stream ": "Вы не подписаны на канал ", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Вы пишете это сообщение в теме, отмеченной как решенная. Вы можете просто продолжить, либо сперва снять с нее отметку решенной.", "You are using an old version of the Zulip desktop app with known security bugs.": "Вы используете устаревшую версию приложения Zulip с известными уязвимостями.", + "You are viewing all the bots in this organization.": "Вы просматриваете все боты этой организации.", "You aren't subscribed to this stream and nobody has talked about that yet!": "Вы не подписаны на этот канал и никто об этом ещё не упоминал!", - "You can also make tables with this Markdown-ish table syntax.": "Вы так же можете делать таблицы с помощью Markdown-подобного синтаксиса таблиц.", + "You can add a new bot or manage your own bots.": "Вы можете добавить новый бот или управлять своими ботами.", + "You can manage your own bots.": "Вы можете управлять своими ботами.", + "You can also make tables with this Markdown-ish table syntax.": "Вы также можете делать таблицы с помощью Markdown-подобного синтаксиса таблиц.", "You can combine search filters as needed.": "При необходимости вы можете комбинировать поисковые фильтры.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Вы получите полный доступ к этому сообществу и участвовать в беседах, если вы создадите учетную запись Zulip в данной организации.", "You can no longer save changes to this message.": "Вы больше не можете сохранять изменения в этом сообщении.", "You can only view or manage invitations that you sent.": "Вы можете видеть и управлять только теми приглашениями, которые вы сами выслали.", - "You can reactivate deactivated users from organization settings.": "Вы можете вновь активировать деактивированных пользователей в настройках организации.", + "You can reactivate deactivated users from organization settings.": "Вы можете вновь активировать отключенных пользователей в настройках организации.", "You can use email to send messages to Zulip streams.": "Вы можете писать в каналы Zulip по электронной почте.", "You cannot create a stream with no subscribers!": "Вы не можете создать канал без подписчиков!", "You cannot create a user group with no members!": "Вы не можете создать пустую группу пользователей!", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "У вас нет права отмечать нерешенной тему с сообщениями, старше {N, plural, one {# hour} other {# hours}} в этой организации.", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "У вас нет права отмечать нерешенной тему с сообщениями, старше {N, plural, one {# minute} other {# minutes}} в этой организации.", "You do not have permission to use wildcard mentions in this stream.": "У вас нет права использовать подстановочные упоминания в этом канале.", + "You do not have permissions to generate invite links in this organization.": "У вас нет права создавать ссылки для приглашения в эту организацию.", + "You do not have permissions to send email invitations in this organization.": "У вас нет права отправлять электронные письма с приглашениями в эту организацию.", "You don't have any direct message conversations yet.": "У вас пока нет сообщений в личной переписке.", + "You follow this topic": "Вы отслеживаете эту тему", "You get": "Получается", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "У вас есть упоминания", "You have muted .": "Вы заглушили .", + "You have muted this topic": "Вы заглушили эту тему", "You have no active bots.": "У вас нет активных ботов.", "You have no direct messages including {person} yet.": "У вас пока нет личной переписки с {person}.", "You have no direct messages with these users yet.": "У вас пока нет личной переписки с этими людьми.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Вы пока не заглушили ни одного пользователя.", "You have not sent any direct messages to yourself yet!": "Вы еще не отправляли себе личные сообщения!", "You have not uploaded any files.": "У вас нет загруженных файлов.", + "You have unmuted this topic": "Вы включили эту тему", "You haven't been mentioned yet!": "Вас пока не упоминали!", "You haven't received any messages sent by {person} yet.": "Вы пока не получали сообщений от {person}.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Вы должны быть администратором, чтобы создавать каналы не подписываясь.", + "You must configure your email to access this feature.": "Для использования данной возможности вам надо настроить адрес электронной почты.", "You need to be running Zephyr mirroring in order to send messages!": "Зеркалирование Zephyr должно быть включено для возможности отправки сообщений!", "You searched for:": "Вы искали:", "You subscribed to stream ": "Вы подписались на канал ", "You type": "Вы пишете", "You unsubscribed from stream ": "Вы отменили подписку на канал ", + "You will get default notifications for this topic": "Вы будете получать стандартные оповещения по этой теме.", "You will not receive notifications about new messages.": "Вы не будете получать оповещения о новых сообщениях.", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Вы не подписаны на этот канал. Вы не получите уведомление, если кто-то ответит на ваше сообщение.", "Your API key:": "Ваш API-ключ:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Ваша учетная запись Zulip на была отключена, теперь вы не можете авторизоваться.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "Отправка вашего сообщения запланирована на {deliver_at}.", "Your message is taking longer than expected to be sent. Sending…": "Отправка вашего сообщения выполняется дольше обычного. Отправляем...", "Your message was sent to a stream you have muted.": "Ваше сообщение отправлено в канал, который вы заглушили.", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Zulip Server {display_version}", "Zulip Server {display_version} (modified)": "Zulip Server {display_version} (модифицирован)", "Zulip Server {display_version} (patched)": "Zulip Server {display_version} (пропатчен)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "Zulip позволяет настраивать сообщения для каждой темы. Вы также можете автоматически отслеживать или включать оповещения в темах, которые вы начали или в которых участвовали.", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "Zulip позволяет заглушать темы и каналы, чтобы избежать получения оповещений о сообщениях, которые вам не интересны. Глушение канала фактически глушит все темы в нем. Вы также можете вручную заглушить тему в незаглушенном канале или отменить глушение темы в заглушенном канале. Дополнительная информация.", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip необходимо отправлять электронный письма для подтверждения адресов пользователей и отправки оповещений.", "Zulip needs your permission to enable desktop notifications.": "Zulip необходимо ваше разрешение, чтобы включить всплывающие уведомления.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Перевод Zulip выполняется нашим потрясающим сообществом переводчиков-добровольцев. Если вы хотите помочь, ознакомьтесь с рекомендациями по переводу Zulip.", "[Configure]": "[Настроить]", - "[Disable]": "[Отключить]", - "[More…]": "[Больше…]", "[Quoting…]": "[Цитирование...]", - "[Unset]": "[Вернуть]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "и {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "назад к каналам", "beta": "бета", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "не относится к модераторам и администраторам", "group direct messages with {recipient}": "групповые личные сообщения с {recipient}", "he/him": "он/его", - "in 1 hour": "через 1 час", - "in 20 minutes": "через 20 минут", - "in 3 hours": "через 3 часа", "invisible mode off": "режим невидимости выключен", "leafy green vegetable": "листвяной зеленый овощ", "marketing": "маркетинг", "more conversations": "еще беседы", "more topics": "еще темы", - "or": "или", "she/her": "она/её", "they/them": "они/их", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Готово! {N} сообщение помечено как прочитанное.} few {Готово! {N} сообщений помечены как прочитанные.} many {Готово! {N} сообщений помечены как прочитанные.} other {Готово! {N} сообщений помечены как прочитанные.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} дн. назад", "{full_name} is typing…": "{full_name} печатает…", "{hours} hours ago": "{hours} ч. назад", - "{items_selected} selected": "{items_selected} выбрано", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {# сообщение} few {# сообщений} many {# сообщений} other {# сообщений}} will remain in the current topic.", "{minutes} min to edit": "{minutes} мин. на изменение", "{minutes} minutes ago": "{minutes} мин. назад", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Это сообщение прочел {num_of_people} человек:} few {Это сообщение прочло {num_of_people} человека:} many {Это сообщение прочло {num_of_people} человек:} other {Это сообщение прочло {num_of_people} человек:}}", "{seconds} sec to edit": "{seconds} секунд на редактирование", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} местное время", "{username} [said]({link_to_message}):": "{username} [писал/а]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} добавил реакцию {emoji_name}" diff --git a/locale/si/LC_MESSAGES/django.po b/locale/si/LC_MESSAGES/django.po index 9129ec9d79..df01320da7 100644 --- a/locale/si/LC_MESSAGES/django.po +++ b/locale/si/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: HelaBasa Group , 2022\n" "Language-Team: Sinhala (http://app.transifex.com/zulip/zulip/language/si/)\n" @@ -20,46 +20,47 @@ msgstr "" "Language: si\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "අමුත්තන්ට ඉඩ නැත" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "සංවිධානය වලංගු නොවේ" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "පොදු ප්‍රචාර" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "පෞද්ගලික ප්‍රචාර" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "විශ්ලේෂණ දත්ත නැත. ඔබගේ සේවාදායක පරිපාලක අමතන්න." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -120,29 +121,31 @@ msgid "" msgstr "පරිශීලකයින් {num_invites} කට ආරාධනා කිරීම සඳහා ප්‍රමාණවත් භාවිතා නොකරන ලද සුලිප් බලපත්‍ර ඔබගේ සංවිධානයේ නැත." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "ඔබ අවම වශයෙන් පරිශීලකයින් {} සඳහා වාර්ණාවක් ගත යුතුය." - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "යම් වැරැද්දක් සිදුවී ඇත. පිටුව නැවත පූරණය කරන්න." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "යම් වැරැද්දක් සිදු වී ඇත. තත්පර කිහිපයක් රැඳී සිට යළි උත්සාහ කරන්න." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -174,7 +177,7 @@ msgstr "සැලසුම යාවත්කාල කිරීමට නොහ msgid "Unable to update the plan. The plan has ended." msgstr "සැලසුම යාවත්කාල කිරීමට නොහැකිය. සැලසුම අවසන් වී ඇත." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -190,14 +193,14 @@ msgstr "වත්මන් ලදුපත් කාල සීමාව තු msgid "You cannot decrease the licenses in the current billing period." msgstr "වත්මන් ලදුපත් කාල සීමාව තුළ ඔබට බලපත්‍ර අඩු කළ නොහැකිය." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "ඔබගේ සැලසුම දැනටමත් {licenses_at_next_renewal} බලපත්‍ර සමඟ අලුත් කිරීමට නියමිතය." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "සංශෝධනයට කිසිත් නැත." @@ -209,7 +212,7 @@ msgstr "මෙම සංවිධානයට පාරිභෝගිකයි msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "ලදුපත් පරිපාලකයෙකු හෝ සංවිධාන හිමිකරුවෙකු විය යුතුය" @@ -259,7 +262,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "අභ්යන්තර සේවාදායකයේ දෝෂයකි" @@ -561,9 +564,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -581,9 +584,9 @@ msgstr "මිලකරණය දකින්න" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -593,9 +596,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -858,51 +861,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "%(identity_provider)s සමඟ ලියාපදිංචි වන්න" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "ලියාපදිංචි වීමට තුති!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "තවමත් වි-තැපෑලක් නැද්ද? අපට එය නැවත යැවිය හැකිය." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "ඔබගේ අයාචිත තැපැල් බහාලුම ද බලන්න." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "සුලිප් වෙත සම්බන්ධ වීමට නොහැකිය." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "යාවතකාල ප්‍රමාද විය හැකිය." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "උත්සාහ කරන්න." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "පණිවිඩ" @@ -1150,6 +1153,159 @@ msgstr "සාමාන්‍ය පුද්ගලයින්" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "සුලිප් වෙත සාදරයෙන් පිළිගනිමු!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "සංවිධානයේ ඒ.ස.නි.: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "සුලිප් හි %(realm_name)s: ඔබගේ නව සංවිධානයේ විස්තර" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "සුලිප් හි %(realm_name)s: ඔබගේ නව ගිණුමේ විස්තර" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "ඔබ %(realm_name)s සුලිප් සංවිධානයට එක් වී ඇත." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1157,6 +1313,39 @@ msgstr "" msgid "Hi," msgstr "ආයුබෝ," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1170,22 +1359,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1240,17 +1416,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1355,225 +1520,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "ඔබගේ වි-තැපැල් ලිපිනය %(email)s ට %(external_host)s මගින් සත්කාරකත්වය දරනු ලබන පහත දැක්වෙන සුලිප් සංවිධානයන් හි ගිණුම් ඇත:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "සුලිප් වෙත සාදරයෙන් පිළිගනිමු!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "සංවිධානයේ ඒ.ස.නි.: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "සුලිප් හි %(realm_name)s: ඔබගේ නව සංවිධානයේ විස්තර" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "සුලිප් හි %(realm_name)s: ඔබගේ නව ගිණුමේ විස්තර" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "ඔබ %(realm_name)s සුලිප් සංවිධානයට එක් වී ඇත." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "කෙටි මාතෘකා සඳහා උදාහරණ" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "සුලිප් වෙත යන්න" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1658,14 +1604,14 @@ msgstr "මෙම ඇරයුම දවස් දෙකකින් කල් #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1697,21 +1643,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1719,21 +1689,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1776,29 +1746,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nවි-තැපෑලට පිළිතුරු නොදෙන්න. සුලිප් සේවාදායකය ලැබෙන වි-තැපැල් පිළිගැනීමට\nවින්‍යාසගත කර නැත. උදව්:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1961,6 +1931,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1989,6 +1967,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "කෙටි මාතෘකා සඳහා උදාහරණ" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "සුලිප් වෙත යන්න" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2377,7 +2427,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2877,292 +2927,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "ලියාපදිංචි කිරීම්" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} දැන් සුලිප් වෙත ලියාපදිංචි වී ඇත. (එකතුව: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "සුලිප් හා එක් වීමට ඔබගේ ඇරයුම {user} පිළිගෙන ඇත!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "මෙම සංවිධානය සඳහා ආරාධනා යැවීමට ඔබගේ ගිණුම ඉතා අළුත් ය. සංවිධාන පරිපාලකයෙකුගෙන් හෝ වඩාත් පළපුරුදු පරිශීලකයෙකුගෙන් අසන්න." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "අපට කිසිවෙකුට ආරාධනා කිරීමට නොහැකි විය." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "එම ලිපිනය වලින් සමහරක් දැනටමත් සුලිප් භාවිතා කරන බැවින් ඔවුන්ට ආරාධනා කළේ නැත. අපි අනෙක් සැම දෙනාටම ආරාධනා කළෙමු!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "වෙනස් කිරීමට කිසිවක් නැත" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} මෙම මාතෘකාව විසඳා ඇති ලෙස සලකුණු කර ඇත." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} මෙම මාතෘකාව නොවිසඳුනු ලෙස සලකුණු කර ඇත." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "ඔබගේ සංවිධානය පණිවිඩ සංස්කරණය අක්‍රිය කර ඇත" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "මෙම පණිවිඩය සංස්කරණය කිරීමට ඔබට අවසර නැත" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "මෙම පණිවිඩය සංස්කරණ කාල සීමාව පසු වී ඇත" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "මෙම පණිවිඩය ගෙන යාමට ඔබට අවසර නැත" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "පණිවිඩ(ය) වලංගු නොවේ" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "පණිවිඩය ගෙනහැර දැක්වීමට නොහැකිය" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "ලබන්නන් සඳහා වලංගු නොවන දත්ත වර්ගයකි" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "ලබන්නන්ගේ ලැයිස්තු වල වි-තැපැල් හෝ පරිශීලක හැඳු. අඩංගු විය හැකිය නමුත් දෙකම නොවේ." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "" - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "මෙම නම සහිත අභිරුචි ඉමොජියක් දැනටමත් පවතී." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3176,8 +3229,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3196,18 +3249,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3216,38 +3283,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "සවිස්තරයක් නැත." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3257,56 +3324,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "ඔබට මෙම පණිවිඩයට උප පණිවිඩයක් ඇමුණිය නොහැකිය." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "වලංගු නොවන පරිශීලක හැඳු. {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "'{}' පරිශීලක සමූහය දැනටමත් පවතී." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "මෙම උප වසම සමඟ ගිණුමෙහි සම්බන්ධතාවයක් නැත" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "සේවාදායක පරිපාලකයෙකු විය යුතුය" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "ප්‍රමාණවත් අවසරයක් නැත" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3321,95 +3391,101 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "උපවසම '-' සමඟ ආරම්භ හෝ අවසන් විය නොහැකිය." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "උපවසම් වල තිබිය හැකි වන්නේ කුඩා අකුරු, අංක සහ '-' පමණි." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "ඔබගේ නියම වි-තැපැල් ලිපිනය භාවිතා කරන්න." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "ඔබ {email} භාවිතයෙන් එක් වීමට උත්සාහ කරන සංවිධානය නොපවතී." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "කරුණාකර සංවිධානයේ පරිපාලකගෙන් {email} සඳහා ඇරයුමක් ඉල්ලන්න." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "ඔබගේ වි-තැපැල් ලිපිනය, {email}, මෙම සංවිධානයේ ගිණුම් සඳහා ලියාපදිංචි වීමට ඉඩ දී ඇති වසම් තුළ නැත." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "මෙම සංවිධානය තුළ + අඩංගු වි-තැපැල් ලිපින වලට ඉඩ නැත." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "සියළුම සුලිප් බලපත්‍ර භාවිතා වන බැවින් නව සාමාජිකයින්ට මෙම සංවිධානයට එක් විය නොහැකිය. කරුණාකර ඔබට ආරාධනා කළ පුද්ගලයාට බලපත්‍ර ගණන වැඩි කරන ලෙස පවසා නැවත උත්සාහ කරන්න." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "නව මුරපදය" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "උපරිම වශයෙන් වි-තැපැල් 10 ක් ඇතුල් කරන්න." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "'{}' වි-තැපෑල වලංගු නොවේ" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3473,31 +3549,31 @@ msgstr "උපවසම් '-' සමඟ ආරම්භ හෝ අවසන් msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "වසමක තිබිය හැකි වන්නේ අකුරු, අංක සහ '-' පමණි." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "සුලිප් දැනුම්දීම්" @@ -3530,166 +3606,166 @@ msgstr "දැනටමත් ගිණුමක් තිබේ." msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "ඉමොජි '{}' නොපවතී" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "වලංගු නොවන අභිරුචි ඉමොජි කි." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "වලංගු නොවන අභිරුචි ඉමොජි නම." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "වලංගු නොවන ඉමොජි කේතය." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "වලංගු නොවන ඉමොජි නම." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "වලංගු නොවන ඉමොජි වර්ගය." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "සංවිධාන පරිපාලකයෙකු හෝ ඉමොජි කතුවරයෙකු විය යුතුය" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "ඉමොජි නම අස්ථානගත වී ඇත" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "සංවිධානයේ හිමිකරු" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "පරිශීලක" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "යෙ.ක්‍ර.මු. භාවිතය අනුපාත සීමාව ඉක්මවා ඇත" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "සංවිධානයේ සාමාජිකයෙකු විය යුතුය" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "සංවිධානයේ පරිපාලකයෙකු විය යුතුය" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "සංවිධානයේ හිමිකරුවෙකු විය යුතුය" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "ඔබගේ පරිශීලක නාමය හෝ මුරපදය වැරදි ය" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "ඔබගේ මුරපදය අබල කර ඇති අතර එය නැවත සැකසිය යුතුය" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "යෙ.ක්‍ර.මු. යතුර වලංගු නොවේ" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "වලංගු නොවන උපවසමකි" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3697,6 +3773,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3738,7 +3822,7 @@ msgid "Settings" msgstr "සැකසුම්" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3751,264 +3835,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "පාරිභෝගික සහාය" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "සන්නිවේදන" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "අලෙවිකරණය" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "ව්යාපෘති කළමනාකරණය" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "ඵලදායිතාව" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "අනුවාද පාලනය" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "පණිවිඩය හිස් නොවිය යුතුය" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "ආයුබෝවන්, සුලිප් වෙත සාදරයෙන් පිළිගනිමු!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4023,669 +4115,758 @@ msgstr "වලංගු නොවන JSON ප්‍රතිචාරයකි" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} ඔබ ගැන සඳහන් කළා:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} සෑම කෙනෙකුම සඳහන් කළා:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' තවදුරටත් සුලිප් භාවිතා නොකරයි." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "සුලිප් ගිණුමේ ආරක්‍ෂාව" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} බූලියන් නොවේ" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} දිනයක් නොවේ" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} ඉතා කුඩා ය" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} යනු නිඛිලයක් නොවේ" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} ඉතා විශාලයි" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} ලැයිස්තුවක් නොවේ" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} වලංගු නොවේ" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} ඉතා දිගයි (සීමාව: අකුරු {max_length})" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "රූපයේ ප්‍රමාණය සීමාව ඉක්මවයි." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "පරිශීලක සමූහය වලංගු නොවේ" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "නම දිග වැඩියි!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "නම ඉතා කෙටි ය!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "නමෙහි වලංගු නොවන අකුරු ඇත!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "නම දැනටමත් භාවිතයේ ඇත!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "වලංගු නොවන අනුකලනය '{}'." - -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "වලංගු නොවන {} අගය {} ({})" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" + +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "වින්‍යාස දත්ත වලංගු නොවේ!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "ස්වයංක්‍රමලේඛ වර්ගය වලංගු නොවේ" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "අතුරු මුහුණතෙහි වර්ගය වලංගු නොවේ" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "වලංගු නොවන පරිශීලක හැඳු.: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "එවැනි ස්වයංක්‍රමලේඛයක් නැත" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "එබඳු පරිශීලකයෙකු නැත" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} වලංගු නොවේ" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} ඉතා දිගයි (සීමාව: අකුරු {max_length})" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} දිනයක් නොවේ" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} යනු නිඛිලයක් නොවේ" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} ඉතා කුඩා ය" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} ඉතා විශාලයි" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} බූලියන් නොවේ" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} වලංගු හෙක්ස් වර්ණ කේතයක් නොවේ" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} ලැයිස්තුවක් නොවේ" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable}! = {expected_value} ({value} වැරදියි)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} යනු ඒ.ස.නි. නොවේ" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' හිස් විය නොහැකිය." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "එවැනි විධානයක් නැත: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF දෝෂයකි: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "ඉමොජි නමෙහි වලංගු නොවන අකුරු ඇත" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "පරිපාලකයින් පමණි" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "කිසිවෙක් නැත" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "සංවිධානයේ හිමිකරු" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "සංවිධානයේ පරිපාලක" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "සාමාජිකයා" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "අමුත්තා" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "ප්‍රසිද්ධ" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "පෞද්ගලික, හවුල් ඉතිහාසය" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "පෞද්ගලික, ආරක්‍ෂිත ඉතිහාසය" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "පළ කළ හැකි වන්නේ පරිපාලකයින්ට පමණි" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "පළ කළ හැකි වන්නේ පූර්ණ සාමාජිකයින්ට පමණි" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "යුනිකේත ඉමොජි" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "අභිරුචි ඉමොජි" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "සුලිප් අමතර ඉමොජි" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "විකල්ප ලැයිස්තුව" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "සබැඳිය" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "බාහිර ගිණුම" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "නොදන්නා අ.ජා.කෙ. ලිපිනයකි" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "නොදන්නා මෙහෙයුම් පද්ධතියකි" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "නොදන්නා අතිරික්සුවකි" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4753,89 +4934,123 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "පෙරනිමි අභිරුචි ක්ෂේත්‍රය යාවත්කාල කළ නොහැකිය." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "එවැනි ආරාධනාවක් නැත" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "මෙම සංවිධානය තුළ පණිවිඩ සංස්කරණ ඉතිහාසය අබල කර ඇත" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "බොහෝ පණිවිඩ ඉල්ලා ඇත (උපරිමය {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "එවැනි මාතෘකාවක් නැත '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4851,27 +5066,28 @@ msgstr "පරිශීලකයා දැනටමත් නිහඬ කර msgid "User is not muted" msgstr "පරිශීලකයා නිහඬ කර නැත" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "වලංගු නොවන තත්ත්වය: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4887,37 +5103,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "වලංගු නොවන භාෂාව '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "වලංගු නොවන වසම: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4929,42 +5145,43 @@ msgstr "{domain} වසම දැනටමත් ඔබගේ සංවිධා msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "ඔබ හරියටම එක් ගොනුවක් උඩුගත කළ යුතුය." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "උඩුගත කළ ගොනුව ඉඩ දී ඇති මෙ.බ. {} ට වඩා විශාල ය" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "අනුපාත සීමාව ඉක්මවිය." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "{email} වෙතින් අතින් නිර්යාත කිරීමක් ඉල්ලන්න." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "වලංගු නොවන දත්ත නිර්යාත හැඳු." -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4972,7 +5189,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "ඔබ හරියටම එක් නිරූපකයක් උඩුගත කළ යුතුය." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4980,107 +5197,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "ඔබ හරියටම එක් ලාංඡනයක් උඩුගත කළ යුතුය." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "වලංගු නොවන ක්‍රීඩා පිටියකි" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "උප පණිවිඩ සඳහා වලංගු නොවන json කි" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5096,97 +5306,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

ගොනුව හමු නොවිණි.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr " ගොනුවේ නම වලංගු නොවේ" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "ඔබට වරකට එක් ගොනුවක් පමණක් උඩුගත කළ හැකිය" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "නව දත්ත සපයා නැත" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "{user_id} පරිශීලක දැනටමත් මෙම සමූහයේ සාමාජිකයෙකි" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "මෙම පරිශීලක සමූහයේ '{}' සාමාජිකයින් නැත" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "මෙම සංවිධානය තුළ වි-තැපැල් ලිපිනය වෙනස් කිරීම් අබල කර ඇත." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "වලංගු නොවන පෙරනිමි_භාෂා" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "දැනුම් දීමේ ශබ්දය '{}' වලංගු නොවේ" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "වැරදි මුරපදයකි!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "ඔබ බොහා් තැත් කිරීම් සිදු කරනවා! තත්. {} කින් යළි උත්සාහ කරන්න." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "නව මුරපදය ඉතා දුර්වලයි!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5233,6 +5454,10 @@ msgstr "එබ්බවූ ස්වයංක්‍රමලේඛයේ නම msgid "Username already in use" msgstr "පරිශීලක නාමය දැනටමත් භාවිතයේ ඇත" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5243,8 +5468,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "'{}' වි-තැපෑල දැනටමත් භාවිතයේ ඇත" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5262,27 +5488,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "සූම් ඇමතුම සෑදීමට අසමත් විය" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "බිග්බ්ලූබටන් වින්‍යාසගත කර නැත." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "බිග්බ්ලූබටන් සේවාදායකයට සම්බන්ධ වීමේ දෝෂයකි." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5302,28 +5528,28 @@ msgstr "කර්බර්ඕඑස් නිහිතය වලංගු නො msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "මාතෘකාව හිස් නොවිය යුතුය" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "අන්තර්ගතය හිස් විය නොහැකිය" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5342,7 +5568,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5350,19 +5576,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "ස්ලැක් වෙතින් පණිවිඩයක්" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5379,47 +5606,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} වලංගු සත්කාරක නාමයක් නොවේ" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "දත්ත වලංගු නොවේ." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "ඔබගේ මුරපදය නැවත සැකසිය යුතුය." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/si/translations.json b/locale/si/translations.json index bbdd4485c6..a53bef2748 100644 --- a/locale/si/translations.json +++ b/locale/si/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "(සවිස්තරයක් නැත)", "(no topic)": "(මාතෘකාවක් නැත)", + "(or )": "", "(you)": "(ඔබ)", "({message_retention_days} days)": "(දවස් {message_retention_days})", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "අනතුරු ඇඟවීමේ වචනය එක්කරන්න", "Add all users": "", "Add another user...": "වෙනත් පරිශීලකයෙකු එක්කරන්න...", + "Add audio call": "", "Add code playground": "කේත ක්‍රීඩා පිටිය එක්කරන්න", + "Add default streams": "", + "Add email": "", "Add emoji": "ඉමොජි එකතු කරන්න", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "{realm_name} සංවිධානයේ සාමාජිකයින් සඳහා අතිරේක ඉමොජි එක්කරන්න.", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "සාමාජිකයා එක්කරන්න...", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "පරිශීලකයෙකු හෝ වැඩි ගණනක් එක්කරන්න", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "කාර්යය එකතු කරන්න", "Add video call": "දෘශ්‍ය ඇමතුම එක්කරන්න", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "සාර්ථකව එකතු කරන ලදි!", "Added successfully.": "", "Administrator": "පරිපාලක", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "සියළුම", "All direct messages": "", + "All groups": "", "All messages": "සියළුම පණිවිඩ", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "උප වසම් වලට ඉඩ දෙන්න", "Allowed domains": "ඉඩ දුන් වසම්", "Allowed domains: {domains}": "ඉඩ දුන් වසම්: {domains}", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "සැමවිටම", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "සුලිප් ගිණුමකට ක්‍රමලේඛිතව ප්‍රවේශ වීමට යෙ.ක්‍ර.මු. යතුර භාවිතා කළ හැකිය. ඔබගේ යෙ.ක්‍ර.මු. යතුරට ප්‍රවේශ වන ඕනෑම අයෙකුට ඔබගේ පණිවිඩ කියවීමට, ඔබ වෙනුවට පණිවිඩ යැවීමට සහ වෙනත් අයුරකින් ඔබ ලෙස සුලිප් හි පෙනී සිටීමට හැකියාව ඇත, එබැවින් ඔබ යෙ.ක්‍ර.මු. යතුර මුරපදය ආරක්‍ෂා කරන තරමටම ප්‍රවේශම් කර ගත යුතුය.
කාර්යයකට ඔබගේ ගිණුමට ප්‍රවේශය අවශ්‍ය නොවන්නේ නම්, ස්වයංක්‍රමලේඛ සෑදීමට හෝ ස්වයංක්‍රමලේඛ ගිණුම් භාවිතයට සහ සුලිප් යෙ.ක්‍ර.මු. වෙත ප්‍රවේශයට යෙ.ක්‍ර.මු. යතුරු ද අපි නිර්දේශ කරන්නෙමු.", "An hour ago": "පැයකට කලින්", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "ඇරයුම වෙත නැවත යැවීමට අවශ්‍ය බව ඔබට විශ්වාසද?", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "ලදුපත්", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "ස්වයංක්‍රමලේඛ වර්ගය", "Bots": "ස්වයංක්‍රමලේඛ", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "හෙළි කිරීමට මෙතැන ඔබන්න.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "වසන්න", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "ගමන් කිරමින්", "Compact": "", "Complete": "සම්පූර්ණයි", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "සන්නාමයට සහ මෙම සුලිප් සංවිධානයේ අරමුණ පැහැදිලි කිරීමට සංවිධානයේ පැතිකඩ සම්පූර්ණ කරන්න.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "පිටපත් විය!", + "Copy URL": "", "Copy address": "", "Copy and close": "පිටපත් කර වසන්න", "Copy code": "කේතයේ පිටපතක්", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "අභිරුචි", + "Custom URL": "", "Custom emoji": "අභිරුචි ඉමොජි", "Custom language: {query}": "අභිරුචි භාෂාව: {query}", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "උඳුවප්", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "පෙරනිමි පරිශීලක සැකසුම්", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "මකන්න", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "ඔබේ සංවිධානයේ ප්‍රමාණය අනුව නිර්යාතයට තත්පරයක සිට පැයක් දක්වා කාලයක් ගත විය හැකිය.", "Deprecation notice": "", "Description": "සවිස්තරය", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "අබල කර ඇත", "Discard": "ඉවතලන්න", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "වසම", "Don’t allow disposable email addresses": "", "Download": "බාගන්න", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "පණිවිඩය සංස්කරණය", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "තත්වය සංස්කරණය", @@ -398,7 +423,6 @@ "Edit your last message": "ඔබගේ අන්තිම පණිවිඩය සංස්කරණය කරන්න", "Edit your profile": "ඔබගේ පැතිකඩ සංස්කරණය කරන්න", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "({last_edit_timestr}) සංස්කරණය කෙරිණි", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "බාහිර ගිණුම් වර්ගය", "External link": "බාහිර සබැඳිය", "Failed": "අසමත් විය", + "Failed adding one or more streams.": "", "Failed to create video call.": "දෘශ්‍ය ඇමතුමක් සෑදීමට අසමත් විය.", "Failed to generate preview": "පෙරදසුන ජනනය කිරීමට අසමත් විය", "Failed to upload %'{file}'": "%'{file}' උඩුගත කිරීමට අසමත් විය", @@ -485,11 +510,9 @@ "Filter exports": "නිර්යාත පෙරන්න", "Filter groups": "", "Filter invites": "ඇරයුම් පෙරන්න", - "Filter languages": "භාෂා පෙරන්න", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "නිහඬ කළ පරිශීලකයින් පෙරන්න", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "මාතෘකා පෙරන්න", @@ -500,6 +523,9 @@ "First message": "පළමු පණිවිඩය", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "පොදු", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "ඇරයුම් සබැඳියක් ජනනය කරන්න", "Generate new API key": "නව යෙ.ක්‍ර.මු. යතුරක් ජනනය කරන්න", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "ඉඟිය", "Hint (up to 80 characters)": "ඉඟිය (අකුරු 80 දක්වා)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "මනුෂ්‍යයින්", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "රැස්වීමක", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "පණිවිඩ දැනුම්දීම් වි-තැපැල් හි පණිවිඩ අන්තර්ගතය ඇතුළත් කරන්න", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "නව රේඛාවක් ඇතුළු කරන්න", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "අනුකලන", "Interface": "අතුරුමුහුණත", "Invalid URL": "වලංගු නොවන ඒ.ස.නි.", @@ -581,6 +614,8 @@ "Inviting...": "ආරාධනා කරමින්...", "Italic": "", "January": "දුරුතු", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "එක් විණි", @@ -599,8 +634,10 @@ "Last 30 days": "පසුගිය දවස් 30", "Last 6 months": "පසුගිය මාස 6", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "අන්තිම පණිවිඩය", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "තව දැනගන්න", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "නික්මෙන්න", "Looking for our integrations or API documentation?": "අනුකලන හෝ යෙ.ක්‍ර.මු. ප්‍රලේඛන බලන්නේද?", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "හි සඳහන් කර ඇත", "Mentions": "සැඳහුම්", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "{recipient_names} පණිවිඩය", "Message {recipient_name} ({recipient_status})": "පණිවිඩය {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "ජංගම", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "මාතෘකාව ගෙන යන්න", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "මෙම පරිශීලකයා නිහඬකරන්න", "Mute topic": "මාතෘකාව නිහඬකරන්න", @@ -734,38 +773,42 @@ "New password is too weak": "නව මුරපදය ඉතා දුර්වල ය", "New stream announcements": "", "New stream message": "", + "New stream notifications": "", "New task": "නව කාර්යය", "New topic": "නව මාතෘකාව", "New user announcements": "", + "New user notifications": "", "Next message": "ඊළඟ පණිවිඩය", "Next unread direct message": "", "Next unread topic": "නොකියවූ ඊළඟ මාතෘකාව", - "Next week": "ලබන සතිය", "No bots match your current filter.": "වත්මන් පෙරහනට ස්වයංක්‍රමලේඛ නොගැළපේ.", + "No conversations match your filters.": "", "No custom emoji.": "අභිරුචි ඉමොජි නැත.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "සවිස්තරයක් නැත.", + "No drafts selected": "", "No drafts.": "කටුපිටපත් නැත", "No exports.": "නිර්යාත නැත.", "No invites match your current filter.": "වත්මන් පෙරහනට කිසිදු ඇරයුමක් නොගැළපේ.", "No language set": "භාෂා කට්ටලයක් නැත", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "ගැළපෙන පරිශීලකයින් නැත.", "No one has read this message yet.": "", "No owner": "හිමිකරු නැත", "No playgrounds configured.": "ක්‍රීඩාපිටි වින්‍යාසගත කර නැත.", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "වත්මන් පෙරහනට ගැළපෙන මාතෘකා නැත.", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "වත්මන් පෙරහනට කිසිවෙකු නොගැළපේ.", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "කිසිවෙක් නැත", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "ඉල්", + "Numbered list": "", "October": "වප්", "Old password": "පරණ මුරපදය", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "විවෘත", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "පරිශීලකයින් ඔවුන්ගේ වි-තැපැල් ලිපිනය වෙනස් කිරීම වලක්වන්න", @@ -869,6 +915,7 @@ "Previous message": "පෙර පණිවිඩය", "Privacy": "පෞද්ගලිකත්වය", "Privacy settings": "පෞද්ගලිකත්‍ව සැකසුම්", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "පෞද්ගලික, ආරක්‍ෂිත ඉතිහාසය", "Private, shared history": "පෞද්ගලික, හවුල් ඉතිහාසය", "Profile": "පැතිකඩ", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "සුරැකෙමින්", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "ඉමොජි තෝරන්න", "Select language": "", + "Select stream": "", "Send": "යවන්න", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "තරු යෙදූ පණිවිඩ ගණන පෙන්වන්න", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "ඔබගේ යෙ.ක්‍ර.මු. යතුර පෙන්වන්න/වෙනස් කරන්න", "Sign up": "ලියාපදිංචි වන්න", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "තරුව", "Star selected message": "", @@ -1024,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "දැනට අනතුරු ඇඟවීමේ වචන නැත.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "මෙම සුලිප් සේවාදායකය පරණ අනුවාදයක් ධාවනය කරන අතර එය ඉහළ දැමිය යුතුය.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "සුලිප් නිවේදනයක පෙනුම මෙවැනි ය.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "ඔබ එවන්නා නිහඬ කර ඇති නිසා මෙම පණිවිඩය සඟවා ඇත.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "වේලා කලාපය", "Time's up!": "කාලය ඉවරයි!", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "අද", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "හෙට", "Tomorrow at {time}": "", "Topic": "මාතෘකාව", "Topic muted": "මාතෘකාව නිහඬ කෙරිණි", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "වර්ගය", + "URL": "", + "URL for your integration": "", "URL pattern": "ඒ.ස.නි. රටාව", - "URL prefix": "ඒ.ස.නි. උපසර්ගය", "URL template": "", "USERS": "පරිශීලකයින්", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "නොකියවූ", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "කටුපිටපත් බලන්න", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "බදාදා", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "ආපසු සාදරයෙන් පිළිගනිමු! නොකියවූ පණිවිඩ {unread_msgs_count} ක් ඇත. ඒවා සියල්ලම කියවූ ලෙස සලකුණු කිරීමට අවශ්‍යද?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "පරිශීලක සමූහ සෑදීමට සහ කළමනාකරණය කිරීමට හැකි වන්නේ කාටද", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "මෙම සංවිධානයට පරිශීලකයින්ට ආරාධනා කළ හැකි වන්නේ කාටද", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "ඔබ සහ", "You and {display_reply_to}": "ඔබ සහ {display_reply_to}", "You and {recipients}": "ඔබ සහ {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "ඔබට ලැබේ", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "ඔබ නිහඬ කර ඇත.", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "ඔබ තවමත් කිසිදු පරිශීලකයෙකු නිහඬ කර නැත.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "ඔබ කිසිදු ගොනුවක් උඩුගත කර නැත.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "ඔබ ගැන තවම සඳහන් කර නැත!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "ඔබ සෙව්වේ:", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "ඔබගේ යෙ.ක්‍ර.මු. යතුර:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "සුලිප් පරිවර්තන සඳහා දායක වී ඇත්තේ අපගේ විශ්මය ජනක ස්වේච්ඡා පරිවර්තක ප්‍රජාව විසිනි. ඔබට උදව් කිරීමට අවශ්‍ය නම්, සුලිප් පරිවර්තන මාර්ගෝපදේශය බලන්න.", "[Configure]": "[වින්‍යාසගත කරන්න]", - "[Disable]": "[අබල කරන්න]", - "[More…]": "[තව…]", "[Quoting…]": "", - "[Unset]": "[සකසා නැත]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "බීටා", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "පැය 1 කින්", - "in 20 minutes": "විනාඩි 20 කින්", - "in 3 hours": "පැය 3 කින්", "invisible mode off": "", "leafy green vegetable": "කොළ පැහැති එලවළු", "marketing": "අලෙවිකරණය", "more conversations": "", "more topics": "තවත් මාතෘකා", - "or": "හෝ", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "දවස් {days_old} කට පෙර", "{full_name} is typing…": "", "{hours} hours ago": "පැය {hours} කට පෙර", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "සංස්කරණය කිරීමට විනාඩි {minutes}", "{minutes} minutes ago": "විනාඩි {minutes} කට පෙර", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "සංස්කරණය කිරීමට තත්පර {seconds}", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/sr/LC_MESSAGES/django.po b/locale/sr/LC_MESSAGES/django.po index c571382589..8b27f34e6b 100644 --- a/locale/sr/LC_MESSAGES/django.po +++ b/locale/sr/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Alex Vandiver , 2023\n" "Language-Team: Serbian (http://app.transifex.com/zulip/zulip/language/sr/)\n" @@ -20,46 +20,47 @@ msgstr "" "Language: sr\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Није дозвољено за госте" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Неисправна организација" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Јавни токови" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Приватни токови" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Директне поруке" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Групне директне поруке" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Непознат назив графикона: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Време почетка је касније од времена завршетка. Почетак: {start}, Завршетак: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Нема доступних података за аналитику. Молим вас контактирајте вашег администратора сервера." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Неисправни параметри" @@ -120,29 +121,31 @@ msgid "" msgstr "Ваша организација нема довољно неискоришћених Зулип лиценци за позивање {num_invites} корисника." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Морате фактурисати најмање {} корисника." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "Фактуре са више од {} лиценци не могу бити обрађене на овој страници. Да би сте завршили надоградњу, молим вас контактирајте {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Десило се нешто непредвиђено. Молим вас контактирајте {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Десило се нешто непредвиђено. Молим вас учитајте поново страницу." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Десило се нешто непредвиђено. Молим вас сачекајте неколико секунди па покушајте поново." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -174,7 +177,7 @@ msgstr "Није могуће освежити план. План је исте msgid "Unable to update the plan. The plan has ended." msgstr "Није могуће освежити план. План је завршен." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -190,14 +193,14 @@ msgstr "Ваш план већ има {licenses} лиценци у тренут msgid "You cannot decrease the licenses in the current billing period." msgstr "Не можете да смањите лиценце у тренутном обрачунском периоду." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "За ваш план је већ организована обнова са {licenses_at_next_renewal} лиценци." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Ништа за измену." @@ -209,7 +212,7 @@ msgstr "Нема купца за ову организацију!" msgid "Session not found" msgstr "Сесија није пронађена" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Морате бити администратор за плаћање или власник организације" @@ -259,7 +262,7 @@ msgid "" msgstr "\n Ако ова грешка није очекивана, можете\n контактирати подршку.\n " #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Интерна грешка сервера" @@ -561,9 +564,9 @@ msgstr "Статус наплате" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -581,9 +584,9 @@ msgstr "Погледајте ценовник" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Самостално хостујте Зулип" @@ -593,9 +596,9 @@ msgstr "Самостално хостујте Зулип" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Затражите спонзорство" @@ -858,51 +861,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Региструјте се са %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "Потврдите адресу ваше е-поште" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Хвала што сте се уписали!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." -msgstr "Проверите вашу е-поште (%(email)s) како би смо могли да почнемо." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." +msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "И даље нема е-поруке? Можемо је поново послати." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "За сваки случај, погледајте у фолдеру нежељене поште." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." -msgstr "Уколико се ова порука не уклони, покушајте да поново учитате страницу." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." +msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Није могуће повезивање на Зулип." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Исправке су можда одложене." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Ускоро покушавам поново..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Покушајте сада." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Поруке" @@ -1150,6 +1153,159 @@ msgstr "Обични корисници" msgid "Digest" msgstr "Сажми" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "Честитамо, направили сте нову Зулип демонстративну организацију. Упамтите\n да ће ова организација бити аутоматски обрисана након 30 дана. Сазнајте више\n о демонстративним организацијама овде!\n " + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "Честитамо, направили сте нову Зулип\n организацију: %(realm_name)s." + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Добродошли у Зулип!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "Придружили сте се Зулип организацији %(realm_name)s.\n " + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "Користићете следеће податке за пријаву у Зулип на вебу, у апликацији за телефон и рачунар:" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Адреса организације: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "Ваше корисничко име: %(ldap_username)s" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Користите ваш LDAP налог за пријаву" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "Е-пошта вашег налога: %(email)s" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "Идите у организацију" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "Ако сте нови у Зулипу, погледајте наш водич за почетнике!" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "Такође имамо водич за подешавање ваше организације." + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s на Зулипу: Детаљи ваше нове организације" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s на Зулипу: Детаљи вашег новог налога" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "Честитамо, направили сте нову Зулип демонстративну организацију. Упамтите да ће ова организација бити аутоматски обрисана након 30 дана. Сазнајте више о демонстративним организацијама овде: %(demo_organizations_help_link)s! " + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "Честитамо, направили сте нову Зулип организацију: %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Приступили сте Зулип организацији %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "Користићете следеће податке за пријаву у Зулип на вебу, у апликацији за телефон и рачунар (%(apps_page_link)s):" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "Ако сте нови у Зулипу, погледајте наш водич за почетнике (%(getting_user_started_link)s)!" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "Такође имамо водич за подешавање ваше организације (%(getting_organization_started_link)s)." + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1157,6 +1313,39 @@ msgstr "Сажми" msgid "Hi," msgstr "Здраво," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Уколико нисте тражили ову промену, молим вас контактирајте нас моментално на %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Уколико нисте тражили ову промену, молим вас контактирајте нас моментално на <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1170,23 +1359,10 @@ msgstr "Примили смо ваш захтев за променом адре msgid "Confirm email change" msgstr "Потврдите промену е-поште" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Уколико нисте тражили ову промену, молим вас контактирајте нас моментално на %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Потврдите вашу нову адресу е-поште" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Уколико нисте тражили ову промену, молим вас контактирајте нас моментално на <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1240,17 +1416,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1355,225 +1520,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Ваша адреса е-поште %(email)s има налоге са следећим Зулип организацијама које хостује %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "Честитамо, направили сте нову Зулип демонстративну организацију. Упамтите\n да ће ова организација бити аутоматски обрисана након 30 дана. Сазнајте више\n о демонстративним организацијама овде!\n " - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "Честитамо, направили сте нову Зулип\n организацију: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Добродошли у Зулип!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "Придружили сте се Зулип организацији %(realm_name)s.\n " - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "Користићете следеће податке за пријаву у Зулип на вебу, у апликацији за телефон и рачунар:" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Адреса организације: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "Ваше корисничко име: %(ldap_username)s" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Користите ваш LDAP налог за пријаву" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "Е-пошта вашег налога: %(email)s" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "Идите у организацију" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "Ако сте нови у Зулипу, погледајте наш водич за почетнике!" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "Такође имамо водич за подешавање ваше организације." - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s на Зулипу: Детаљи ваше нове организације" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s на Зулипу: Детаљи вашег новог налога" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "Честитамо, направили сте нову Зулип демонстративну организацију. Упамтите да ће ова организација бити аутоматски обрисана након 30 дана. Сазнајте више о демонстративним организацијама овде: %(demo_organizations_help_link)s! " - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "Честитамо, направили сте нову Зулип организацију: %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Приступили сте Зулип организацији %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "Користићете следеће податке за пријаву у Зулип на вебу, у апликацији за телефон и рачунар (%(apps_page_link)s):" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "Ако сте нови у Зулипу, погледајте наш водич за почетнике (%(getting_user_started_link)s)!" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "Такође имамо водич за подешавање ваше организације (%(getting_organization_started_link)s)." - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Примери кратких тема" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Идите на Зулип" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1658,14 +1604,14 @@ msgstr "Ова позивница истиче за два дана. Ако по #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1697,21 +1643,45 @@ msgid "" msgstr "Примате ово јер је @%(mentioned_user_group_name)s био поменут." #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "Примате ово јер су сви били поменути у #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "Примате ово јер сте омогућили обавештења е-порукама за #%(stream_name)s." -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1719,21 +1689,21 @@ msgid "" "preferences." msgstr "Одговорите директно на ову е-поруку, прегледајте је у %(realm_name)s Зулипу, или управљајте подешавањима е-порука." -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Прегледајте или одговорите у %(realm_name)s Зулипу, или управљајте подешавањима е-порука." -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "Одговорите у %(realm_name)s Зулипу, или управљајте подешавањима е-порука." -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1776,29 +1746,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nОва е-порука не садржи садржај поруке јер је сте ви онемогућили приказ садржаја поруке у обавештењима е-порукама.\nПогледајте %(alert_notif_url)s за више детаља.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "Одговори директно на ову е-поруку или је прегледај у %(realm_name)s Зулип:" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "Прегледај или одговори у %(realm_name)s Зулип:" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "Одговори у %(realm_name)s Зулип:" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nНе одговарајте на ову поруку. Овај Зулип сервер није подешен да прихвата\nдолазне е-поруке. Помоћ:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Управљајте подешавањима е-порука:" @@ -1961,6 +1931,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1989,6 +1967,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Примери кратких тема" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Идите на Зулип" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2377,7 +2427,7 @@ msgid "Incoming webhooks" msgstr "Долазне веб закачке" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Интерактивни ботови" @@ -2877,292 +2927,295 @@ msgid "" " " msgstr "\n Такође можете користити Зулип на рачунару.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "регистрације" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} се управо регистровао на Зулип. (укупно: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} је прихватио ваш позив да се придружи Зулипу!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "ИД поље {id} није пронађено." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Неисправно предефинисано име групе тока '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Предефинисано име групе тока је предугачко (ограничење: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Предефинисано име групе тока '{}' садржи NULL (0x00) карактере." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Неисправна предефинисана група тока {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' је предефинисани ток и не може бити додат у '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Предефинисана група тока '{group_name}' већ постоји" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Ток '{stream_name}' је већ присутан у предефинисаној групи тока '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Ток '{stream_name}' није присутан у предефинисаној групи тока '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Ова предефинисана група група тока већ се назива '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Предефинисана група тока '{}' већ постоји" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "Да би заштитио кориснике, Зулип ограничава број позивница које можете послати у једном дану. Зато што сте достигли ово ограничење, ниједна позивница није послата." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Ваш налог је превише нов да би сте слали позивнице за ову организацију. Питајте администратора организације или дугогодишњег корисника." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Неке адресе е-поште нису прошле проверу тако да нисмо послали ниједну позивницу." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Нисмо успели никога да позовемо." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Неке од ових адреса већ користе Зулип, тако да њима нисмо послали позивницу. Али зато јесмо послали свима осталима!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Ништа за промену" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "Директне поруке не могу бити премештене у токове." -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "Директне поруке не могу имати теме." -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Није могуће мењати садржај поруке уз истовремену промену тока" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Виџети се не могу мењати." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} је означио ову тему као решену." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} је означио ову тему као нерешену." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "Ова тема је премештена у {new_location} од стране {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "Порука је премештена из ове теме у {new_location} од стране {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} порука је премештено из ове теме у {new_location} од стране {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "Ова тема је премештена овде из {old_location} од стране {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} порука је премештено овде из {old_location} од стране {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Ваша организација је искључила уређивање порука" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Немате одобрење да уређујете ову поруку" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Прошло је временско органичење за уређивање ове поруке" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Немате дозволу да користите @-помињања у овом току." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Немате одобрење да преместите ову поруку" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Немате одобрење да преместите ову поруку због губитка приступа њеном току" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "Временско ограничење за измену порука овог тока је истекло" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Неисправна порука(е)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Није могуће приказати поруку" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Очекиван је тачно један ток" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Неисправан тип података за ток" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Неисправан тип података за примаоце" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Списак прималаца може да садржи адресе е-поште или ИД корисника, али не оба." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Ваш бот {bot_identity} је покушао да пошаље поруку у ток са ИД {stream_id}, али нема тока са тим ИД-ом." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Ваш бот {bot_identity} је покушао да пошаље поруку у ток {stream_name}, али тај ток не постоји. Кликните [овде]({new_stream_link}) да би сте га направили." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Ваш бот {bot_identity} је покушао да пошаље поруку у ток {stream_name}. Ток постоји али нема ниједног претплатника." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "Директне поруке су онемогућене у овој организацији." -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Теме су обавезне у овој организацији" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Реаговање већ постоји." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Већ постоји прилагођени емотикон са овим именом." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3176,8 +3229,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3196,18 +3249,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} је променио [дозволе приступа](/help/stream-permissions) за овај ток из **{old_policy}** у **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3216,38 +3283,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} је променио [дозволе обајвљивања](/help/stream-sending-policy) за овај ток:\n\n* **Старе дозволе**: {old_policy}.\n* **Нове дозволе**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} је преименовао ток {old_stream_name} у {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Нема описа." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} је променио опис овог тока." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Стари опис" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "Нови опис" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Заувек" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Поруке у овом току ће сада бити сачуване заувек." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3257,56 +3324,59 @@ msgid "" "{summary_line}" msgstr "{user} је променио [период чувања порука](/help/message-retention-policy) за овај ток:\n* **Стари период чувања**: {old_retention_period}\n* **Нови период чувања**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Не можете прикачити потпоруку овој поруци." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Неисправан ИД корисника {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Група корисника '{}' већ постоји." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Налог није повезан са овим поддоменом" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Мора бити администратор сервера" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Недовољне дозволе" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Неисправно заглавље ауторизације за основну ауторизацију" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Недостаје заглавље ауторизације за основну ауторизацију" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3321,95 +3391,101 @@ msgstr "Ваш налог {username} је деактивиран. Молим в msgid "The password is too weak." msgstr "Лозинка је превише слаба." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Поддомен мора бити дужине 3 или дужи." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Поддомен не може почети са '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Поддомен може садржати само мала слова, бројеве и '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Поддомен није доступан. Молим вас изаберите неки други." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Молим вас користите вашу праву адресу е-поште." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Не постоји организација којој покушавате да приступите користећи {email}." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Молим вас затражите позивницу за {email} од администратора организације." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Ваша адреса е-поште, {email}, није једна од домена којима је дозвољено да региструју налоге у овој организацији." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Адресе е-поште које садрже + нису дозвољене у овој организацији." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Нови чланови не могу да приступе овој организацији јер су све Зулип лиценце искоришћене. Молим вас контактирајте особу која вас је позвала и замолите их да повећају број лиценци, а затим покушате поново." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Нова лозинка" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Потврда нове лозинке" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "Покушавате превише пута да се пријавите. Покушате поново за {} секунди или контактирајте администратора организације за помоћ." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Ваша лозинка је онемогућена јер је превише слаба. Ресетујте лозинку да би сте направили нову." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Токен" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Молим вас унесите највише 10 е-адреса." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Нисмо могли да пронађемо ту Зулип организацију." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Неисправна е-пошта '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3473,31 +3549,31 @@ msgstr "Поддомен не може почети или се завршити msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Домен може садржати само слова, бројеве, '.' и '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Временска ознака не може бити негативна." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Тема не сме садржати нула бајтова" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Морате навести тачно 1 ИД тока за поруке тока" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Корисник је онемогућио синхронизацију нацрта." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Нацрт не постоји" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Отворите Зулип да би сте видели скривени садржај" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Зулип обавештења" @@ -3530,166 +3606,166 @@ msgstr "Већ има налог." msgid "Account has been deactivated." msgstr "Налог је деактивиран." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Емотикон '{}' не постоји" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Неисправан прилагођени емотикон." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Неисправно име прилагођеног емотикона." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Прилагођени емотикон је деактивиран." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Неисправан код емотикона." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Неисправно име емотикона." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Неисправан тип емотикона." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Морате бити администратор организације или аутор емотикона" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "Имена емотикона морају се завршити са словом или цифром." -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "Имена емотикона морају садржати само мала слова енглеског алфабета, цифре, размаке, цртице и доње цртице." -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Недостаје име емотикона" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Ток '{stream}' не постоји" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Ток са ИД '{stream_id}' не постоји" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "власник организације" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "корисник" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Није могуће деактивирати једино {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Лоше формиран JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Морате бити члан организације" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Морате бити администратор организације" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Мора бити власник организације" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Ваше корисничко име или лозинка нису исправни" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Налог је деактивиран" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Ова организације је деактивирана" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "Регистрација сервиса за слање обавештења на телефонима вашег сервера је деактивирана" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Аутентификација лозинком је онемогућена у овој организацији" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Ваша лозинка је онемогућена и неопходно је ресетовати је" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Неисправан АПИ кључ" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Лоше формиран АПИ кључ" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Није могуће разлучити захтев: Да ли је {webhook_name} генерисао овај догађај?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Неисправан поддомен" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Приступ је одбијен" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3697,6 +3773,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Реаговање већ постоји." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Реакција не постоји." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "Twitter корисничко име" @@ -3738,8 +3822,8 @@ msgid "Settings" msgstr "Подешавања" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Идите у подешавања да би сте подесили ваша обавештења и начин приказа." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3751,264 +3835,272 @@ msgid "" "and give it a go!" msgstr "Кликните овде да би сте започели нови разговор. Изаберите тему (2-3 речи је најбоље), и крените!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Оквир интеграција" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Сталне интеграције" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Корисничка подршка" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Постављање" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Забава" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Комуникација" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Финансијски" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "Људски ресурси" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Маркетинг" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Разно" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "Надгледање" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Управљање пројектима" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Продуктивност" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Контрола верзија" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Порука не може бити празна" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Порука не сме садржати нула бајтова" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Оператор {} није подржан." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Недостаје 'сидро' аргумент." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Неисправно сидро" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "Ако сте нови у Зулипу, погледајте наш [водич за почетнике]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Здраво и добродошли у Зулип!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "Ово је директна порука од мене, бота добродошлице." -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "Такође вам могу помоћи да све подесите! Само кликните било где на ову поруку или притисните `r` за одговор." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Ево неколико порука које разумем:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Идите на [подешавања профила](#settings/profile) да би сте додали [профилну слику](/help/change-your-profile-picture) и измените [информације о вашем профилу](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Идите на [подешавања приказа](#settings/display-settings) да би сте [прешли на светлу или тамну тему](/help/dark-theme), [изабрали омиљену тему емотикона](/help/emoji-and-emoticons#change-your-emoji-set), [променили језик приказа](/help/change-your-language), и извршили друге промене за ваше Зулип искуство." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "У Зулипу токови [одређују ко добија поруку](/help/streams-and-topics). Они су слични каналима у другим апликацијама за ћаскање." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Прегледајте и претплатите се на токове](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "У Зулипу теме вам [говоре о чему се ради у поруци](/help/streams-and-topics). Оне су попут наслова у е-поруци." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "Погледајте [недавне разговоре](#recent) да би сте видели шта се дешава! Можете се вратити у овај разговор кликом на \"Директне поруке\" у горњем левом углу." -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Зулипове [пречице на тастатури](#keyboard-shortcuts) вам омогућавају да брзо и ефикасно управљате апликацијом." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Притисните `?` у било ком тренутку да би сте видели [списак пречица](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Зулип користи [Markdown](/help/format-your-message-using-markdown), интуитиван формат за **подебљање**, *курзив*, назначене листе и много више. Кликните [овде](#message-formatting) за преглед команди." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Погледајте наше [савете за писање порука](/help/messaging-tips) да би сте научили о реакцијама емотиконима, блоковима кода и још много тога!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Погледајте наш [водич за почетнике](/help/getting-started-with-zulip), или прегледајте [центар помоћи](/help/) да би сте научили више!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "Жао ми је, нисам разумео вашу поруку. Молим покушајте са једном од следећих команди:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Ово је приватан ток, како је означено са иконицом катанца поред назива тока." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Приватни токови су видљиви само члановима тока." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Да би сте управљали овим током, идите на [подешавања тока]({stream_settings_url}) и кликните на `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Ово је порука у току #**{default_notification_stream_name}** са темом `демонстрација теме`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Теме су лагани алат за добру организацију разговора." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Можете научити више о темама на [токови и теме]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Ово је порука у току #**{default_notification_stream_name}** са темом `пливајуће корњаче`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4023,669 +4115,758 @@ msgstr "Неиспарни JSON у одговору" msgid "Invalid response format" msgstr "Неисправан формат одговора" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Токен не постоји" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Ова организација је онемогућила приказ садржаја поруке у обавештењима на телефону" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} је поменуо @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} вас је поменуо:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} је поменуо све:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Корисник није овлашћен за овај упит" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' више не користи Зулип." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "Не можете слати директне поруке ван своје организације." #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Недостаје '{var_name}' аргумент" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Лоша вредност за '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Аргумент \"{}\" није исправан JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Безбедност Зулип налога" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Само администратори организације могу писати у овај ток." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Само администратори и модератори организације могу писати у овај ток." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Гости не могу писати у овај ток." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Нови чланови не могу писати у овај ток." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Није овлашћен да шаље у ток '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Молим вас наведите 'ток'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Молим вас изаберите једно: 'ток' или 'ид_тока'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "Неисправан ИД тока" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Име тока '{}' је већ заузето." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Неисправно име тока '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Ток(ови) ({}) не постоје" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Јавни токови на вебу нису омогућени." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Предефинисана група тока са ИД '{}' не постоји." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Име тока не може бити празно!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Име тока је предугачко (ограничење: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Неисправан карактер у имену тока, на позицији {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Тема не може бити празна!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Неисправан карактер у теми, на позицији {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Подаци претплатника за овај ток нису доступни" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Није било могуће добити ко су претплатници приватног тока" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} није логичка вредност" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} није датум" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} није децимална вредност" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} је премало" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} није цео број" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} је превелико" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} није листа" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Неисправно {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} је предугачко (ограничење: {max_length} карактера)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} није текстуални садржај" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Величина слике превазилази ограничење." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Непознат формат анимиране слике." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Неисправна група корисника" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "Неисправан ИД групе корисника: {}" - -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." -msgstr "'{}' мора бити системска група корисника." - -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." +msgstr "" + +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" + +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Име је предугачко!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Име је прекратко!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Неисправан карактер у имену!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Неисправан формат!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Име је већ у употреби!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Лош назив или корисничко име" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Неисправна интеграција '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Недостају параметри конфигурације: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Неисправна {} вредност {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Неисправни подаци конфигурације!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Неисправан тип бота" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Неисправан тип интерфејса" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Неисправан ИД корисника: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Нема таквог бота" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Нема таквог корисника" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Корисник је декативиран" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} није текстуални садржај" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} не може бити празно." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Неисправно {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} је предугачко (ограничење: {max_length} карактера)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} нема исправну дужину {length}; требало би бити {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "{var_name} није препозната временска зона" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} није датум" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} није цео број" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} је премало" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} је превелико" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} није децимална вредност" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} није логичка вредност" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} није исправан код хекс боје" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} није листа" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} би требао имати тачно {length} ставки" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} кључ недостаје из {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Неочекивани аргументи: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} је погрешно)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} није адреса" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "Шаблон адресе мора садржати '%(username)s'." -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' не може бити празно." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "Поље не сме садржати дуплиране изборе." -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' није исправан избор за '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} није текстуална вредност или листа целобројних вредности" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} није текстуална вредност или листа целобројних вредности" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} не садржи дужину" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} недостаје" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Недостаје HTTP заглавље догађаја '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Нема такве команде: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF грешка: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "догађаји тока" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Доступно на Зулип Облак стандард. Надоградите за приступ." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "GIPHY интеграција је онемогућена" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Неисправан карактер у називу емотикона" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Лош регуларни израз: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Непозната грешка регуларног израза" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Админи, модератори, чланови и гости" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Админи, модератори и чланови" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Админи и модератори" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Само админи" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Нико" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Власник организације" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Администратор организације" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Модератор" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Члан" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Гост" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Јавно доступно" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Јавно" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Приватно, дељена историја" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Приватно, заштићена историја" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Јавна, заштићена историја" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Сви чланови тока могу да пишу" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Само администратори организације могу да пишу" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Само администратори и модератори организације могу да пишу" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Само пуни чланови организације могу да пишу" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Уникод емотикон" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Прилагођени емотикон" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Зулип додатни емотикон" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Корисник са ИД {} је декативиран" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Корисник са ИД {} је бот" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Листа опција" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Бирач особе" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Кратки текст" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Дуги текст" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Бирач датума" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Веза" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Екстерни налог" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "Заменице" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Непозната IP адреса" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "непознати оперативни систем" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Непознати прегледач" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Недостаје 'queue_id' аргумент" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Недостаје 'last_event_id' аргумент" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4753,89 +4934,123 @@ msgstr "Поље са том ознаком већ постоји." msgid "Default custom field cannot be updated." msgstr "Предефинисано прилагођено поље не може бити измењено." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" -msgstr "Неисправан '{}' параметар за анонимни захтев" - -#: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + +#: zerver/views/hotspots.py:19 +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" + +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Морате навести барем једну адресу е-поште." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Не постоји ток са ИД: {}. Ниједна позивница није послата." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Нема такве позивнице" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "Позивница је већ опозвана" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." -msgstr "Неисправан ИД тока {}. Ниједна позивница није послата." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." +msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Историја измена порука је онемогућена у овој организацији" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Немате дозволу да обришете ову поруку" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Временско ограничење за брисање ове поруке је истекло" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Порука је већ обрисана" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Захтевано је превише порука (максимално {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "Сидро може бити изузето само на крају опсега" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Нема такве теме '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Недостаје пошиљалац" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4851,27 +5066,28 @@ msgstr "Корисник је већ утишан" msgid "User is not muted" msgstr "Корисник није утишан" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Присутност није подржана за бот кориснике." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Клијент није проследио ниједну нову вредност." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Неисправан статус: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4887,37 +5103,37 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Реакција не постоји." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "Потврде читања су онемогућене у овој организацији." -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Неисправан језик '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Мора бити омогућен барем један начин аутентификације." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Мора бити демонстративна организација." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Неисправан домен: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4929,42 +5145,43 @@ msgstr "Домен {domain} је већ део ваше организације msgid "No entry found for domain {domain}." msgstr "Ниједан унос није пронађен за домен {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Морате поставити тачно једну датотеку." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "Само администратори могу да препишу предефинисане емотиконе." -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Молим вас затражите ручни извоз са {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Неисправан ИД извоза података" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Извоз је већ обрисан" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4972,7 +5189,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Морате поставити тачно једну иконицу." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Линкификатор није пронађен." @@ -4980,107 +5197,100 @@ msgstr "Линкификатор није пронађен." msgid "You must upload exactly one logo." msgstr "Морате поставити тачно један лого." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Неисправно игралиште" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Корисник није овлашћен да извршава упите у име '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Приватни токови не могу постати предефинисани." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Предефинисани токови не могу постати приватни." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Ток већ поседује тај назив!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} вас је претплатио на ток {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} вас је претплатио на следеће токове:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Није могуће приступити току ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} је направио следеће токове: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} је направио нови ток {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "нови токови" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** ток је креирао {user_name}. **Опис:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Непознато својство претплате: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Није претплаћен на ток ИД {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Нисте овлашћени да прегледате ову датотеку.

" @@ -5096,97 +5306,108 @@ msgstr "Корисник је онемогућио обавештење за к msgid "User has disabled typing notifications for direct messages" msgstr "Корисник је онемогућио обавештење за куцкање за директне поруке" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Датотека није пронађена.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Неисправан токен" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Неисправно име датотеке" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Морате навести датотеку за постављање" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Можете поставити само једну по једну датотеку" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Нису достављени нови подаци" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Корисник {user_id} је већ члан ове групе" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "Нема члана '{}' у овој групи корисника" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "Корисничка група {group_id} је већ подгрупа ове групе." -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "Корисничка група {group_id} није подгрупа ове групе." -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Промена сличица није омогућена у овој организацији." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Промена адресе е-поште је онемогућена у овој организацији." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Неисправан звук обавештења '{}'" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Вашом Зулип лозинком се управља кроз LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Погрешна лозинка!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Чините превише погрешних покушаја! Покушајте поново за {} секунди." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Нова лозинка је превише слаба!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Можете поставити тачно један аватар." @@ -5233,6 +5454,10 @@ msgstr "Неисправно име интегрисаног бота." msgid "Username already in use" msgstr "Корисничко име је већ у употреби" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5243,8 +5468,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Привремене адресе е-поште нису дозвољене у овој организацији" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Е-пошта '{}' је већ у употреби" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5262,27 +5488,27 @@ msgstr "Неисправан Zoom идентификатор сесије" msgid "Invalid Zoom credentials" msgstr "Неисправни Zoom креденцијали" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Није успело успостављање Zoom позива" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton није подешен." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Неисправан потпис." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Грешка при повезивању са BigBlueButton сервером." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Грешка при аутентификацији са BigBlueButton сервером." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton сервер је вратио неочекивану грешку." @@ -5302,28 +5528,28 @@ msgstr "Неисправан Керберос кеш" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Непознат захтев веб закачке" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Тема не може бити празна" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Садржај не може бити празан" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Лоше форматиран JSON унос" @@ -5342,7 +5568,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5350,19 +5576,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Порука са Slack-а" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5379,47 +5606,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Неисправан UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Неисправна врста токена" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} није исправно име домаћина" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Неисправно својство {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Подаци нису правилно сложени." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Неисправан податак." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Морате да ресетујете вашу лозинку." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Неисправан OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/sr/translations.json b/locale/sr/translations.json index ea6e831c7c..3566c94773 100644 --- a/locale/sr/translations.json +++ b/locale/sr/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(сакривено)", "(no description)": "(нема описа)", "(no topic)": "(нема теме)", + "(or )": "", "(you)": "(ви)", "({message_retention_days} days)": "({message_retention_days} дана)", "/dark (Switch to the dark theme)": "/dark (Пребацује у тамну тему)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} није члан овог тока. Он неће бити обавештен осим ако га не учланите.", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} има {number_of_invites_by_user} неистеклих позивница.", "Subscribe": "Учлани се", - "Click here to learn about exporting private streams and messages.": "Кликните овде да научите како да извезете приватне токове и поруке.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Надоградите за више простора.", " to add a new line": " за уметање нове линије", " to send": " за слање", @@ -82,15 +83,18 @@ "Add alert word": "Додајте реч за упозорење", "Add all users": "Додајте све кориснике", "Add another user...": "Додајте другог корисника...", + "Add audio call": "", "Add code playground": "Додајте игралиште за код", + "Add default streams": "", + "Add email": "", "Add emoji": "Додајте емотикон", "Add emoji reaction": "Додајте реакцију емотиконом", "Add extra emoji for members of the {realm_name} organization.": "Додајте додатне емотиконе за чланове {realm_name} организације.", "Add global time": "Додајте глобално време", "Add linkifier": "Додајте линкификатор", "Add members": "Додај чланове", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Додајте члана…", - "Add new default stream": "Додајте нови предефинисани ток", "Add new user group": "Додајте нову групу корисника", "Add one or more users": "Додајте једног или више корисника", "Add option": "Додај опцију", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Додајте чланове. Користите групу корисника или #називтока да би сте масовно додали кориснике.", "Add task": "Додајте задатак", "Add video call": "Додајте видео позив", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Успешно додато", "Added successfully.": "Успешно додато.", "Administrator": "Администратор", @@ -124,6 +129,7 @@ "Alerted messages": "Поруке са упозорењем", "All": "Све", "All direct messages": "Све директне поруке", + "All groups": "", "All messages": "Све поруке", "All messages including muted streams": "Све поруке укључујући утишане токове", "All streams": "Сви токови", @@ -136,9 +142,11 @@ "Allow subdomains": "Дозволи поддомене", "Allowed domains": "Дозвољени домени", "Allowed domains: {domains}": "Дозвољени домени: {domains}", + "Already members:": "", "Already not subscribed.": "Већ није члан.", "Already subscribed to {stream}": "Већ јесте члан у {stream}", "Already subscribed users:": "Већ учлањени корисници:", + "Already subscribed.": "", "Always": "Увек", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "АПИ кључ се може користити да се програмски приступи Зулип налогу. Свако са приступом вашем АПИ кључу има могућност да чита ваше поруке, шаље поруке у ваше име и да се представља као ви на Зулипу, зато би требали да чувате ваш АПИ кључ као што чувате вашу лозинку.
Ми препоручујемо да креирате ботове и користите њихове налоге и АПИ кључеве за приступ Зулип АПИ-ју, осим ако задатак не захтева приступ вашем налогу.", "An hour ago": "Пре сат времена", @@ -150,6 +158,7 @@ "Archive ?": "Архивирај ?", "Archive stream": "Архивирај ток", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "Архивирање тока ће моментално ишчланити све. Ова акција се не може поништити.", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Да ли заиста желите да креирате ток ''''{stream_name}'''' и учланите {count} корисника у њега?", "Are you sure you want to deactivate this organization?": "Да ли заиста желите да деактивирате ову организацију?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Да ли заиста желите да поново пошаљете позивницу на ?", "Are you sure you want to revoke the invitation to {email}?": "Да ли заиста желите да повучете позивницу за {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Да ли заиста желите да повучете ову позивницу креирану од стране {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "Да ли заиста желите да пошаљете обавештење @-помињања {subscriber_count} корисника који су претплаћени на #{stream_name}? Ако не желите, молим измените вашу поруку како би сте уклонили @{wildcard_mention} помињање.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Да ли заиста желите да уклоните звездицу са свих порука у ? Ова акција се не може поништити.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Да ли заиста желите да уклоните звездицу са свих порука? Ова акција се не може поништити.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "Промена аватара је онемогућена у овој организацији", "Avatar from Gravatar": "Аватар са Граватара", "Back to streams": "Повратак на токове", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "Зато што сте једини власник организације, не можете да деактивирате ваш налог.", "Because you are the only subscriber, this stream will be automatically archived.": "Зато што сте једини претплатник, овај ток ће аутоматски бити архивиран.", "Billing": "Рачун", @@ -190,8 +201,11 @@ "Bot owner": "Власник бота", "Bot type": "Врста бота", "Bots": "Ботови", + "Browse 1 more stream": "", "Browse recent conversations": "Прегледај недавне разговоре", "Browse streams": "Претражи токове", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Компанија", "Busy": "Заузет", "By deactivating your account, you will be logged out immediately.": "Деактивирањен вашег налога бићете одмах излоговани.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Кликните овде да би сте открили.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Кликните ван поља за унос за снимање. Аутоматски ћемо обавеститие све који су додати или уклоњени.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Кликните овде за преглед и преузимање.", "Close": "Затвори", "Close modal": "Затвори прозор", @@ -232,7 +248,7 @@ "Commuting": "У превозу", "Compact": "Компактан", "Complete": "Заврши", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Завршите профил организације да би сте брендирали и објаснили сврху ове Зулип организације.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Саставите поруку", "Compose your message here": "Саставите вашу поруку овде", "Compose your message here...": "Саставите вашу поруку овде...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Конвертуј емотиконе пре слања (:) постаје 😃)", "Cookie Bot": "Колачић бот", "Copied!": "Ископирано!", + "Copy URL": "", "Copy address": "Копирај адресу", "Copy and close": "Ископирај и затвори", "Copy code": "Ископирај код", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Тренутно прегледате све поруке.", "Currently viewing the entire stream.": "Тренутно прегледате комплетан ток.", "Custom": "Прилагођено", + "Custom URL": "", "Custom emoji": "Прилагођени емотикони", "Custom language: {query}": "Прилагођени језик: {query}", "Custom linkifier added!": "Додат је прилагођени линкификатор!", @@ -302,10 +320,12 @@ "Deactivated": "Деактивиран", "Deactivated users": "Деактивирани корисници", "December": "Децембар", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Предефинисано је {language}. Користите 'text' да би сте онемогућили наглашавање.", "Default language for code blocks": "Предефинисани језик за блокове кодова", "Default streams": "Предефинисани токови", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Предефинисана подешавања корисника", "Default view": "Предефинисани приказ", @@ -314,12 +334,14 @@ "Delete": "Обриши", "Delete alert word": "Обриши реч за упозорење", "Delete all drafts": "Обриши све нацрте", + "Delete all selected drafts": "", "Delete code playground?": "Обрисати игралиште за код?", "Delete custom profile field?": "Обриши прилагођено поље профила?", "Delete data export?": "Обриши извоз података?", "Delete draft": "Обриши нацрт", "Delete file": "Обриши датотеку", "Delete file?": "Обриши датотеку?", + "Delete group": "", "Delete icon": "Обриши иконицу", "Delete linkifier?": "Обрисати линкификатор?", "Delete logo": "Обриши лого", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "У зависноти од величине ваше организације, извоз може да потраје од неколико секунди до сат времена.", "Deprecation notice": "Обавештење о застаревању", "Description": "Опис", + "Deselect draft": "", "Desktop": "Рачунар", "Desktop & mobile apps": "Рачунар и мобилне апликације", "Desktop message notifications": "Обавештења о поруци на рачунару", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Детаљна документација о форматирању порука", "Detailed search filters documentation": "Детаљна документација филтера претраге", "Direct message": "", + "Direct message to me": "", "Direct messages": "Директне поруке", "Direct messages and mentions": "Директне поруке и помињања", "Direct messages are disabled in this organization.": "Директне поруке су онемогућене у овој организацији.", "Direct messages disabled": "Директне поруке су онемогућене", + "Disable": "", "Disable notifications?": "", "Disabled": "Онемогућено", "Discard": "Одбаци", @@ -360,9 +385,9 @@ "Display my availability to other users": "Прикажи моју доступност осталим корисницима", "Display names of reacting users when few users have reacted to a message": "Прикажи имена који су реаговали када је неколико корисника реаговало на поруку", "Display on user card": "Прикажи на картици корисника", - "Display settings": "Подешавања приказа", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Да ли желите да додате све?", + "Do you want to mark them all as read?": "", "Domain": "Домен", "Don’t allow disposable email addresses": "Не дозвољавај привремене адресе е-поште", "Download": "Преузми", @@ -388,7 +413,7 @@ "Edit custom profile field": "Измени прилагођено поље профила", "Edit linkfiers": "Измени линкификаторе", "Edit message": "Уредите поруку", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Уреди изабране нацрте", "Edit selected message or view source": "Измени изабрану поруку или прикажи изворно", "Edit status": "Уреди статус", @@ -398,7 +423,6 @@ "Edit your last message": "Уреди твоју последњу поруку", "Edit your profile": "Уреди свој профил", "Edit {group_name}": "Измени {group_name}", - "Edited ({last_edit_timestr})": "Уређено ({last_edit_timestr})", "Edited by {full_name}": "Уредио {full_name}", "Education (for-profit)": "Едукативна (профитна)", "Education (non-profit)": "Едукативна (непрофитна)", @@ -461,6 +485,7 @@ "External account type": "Врста екстерног налога", "External link": "Екстерна веза", "Failed": "Неуспешно", + "Failed adding one or more streams.": "", "Failed to create video call.": "Неуспело креирање видео позива.", "Failed to generate preview": "Неуспело генерисање прегледа", "Failed to upload %'{file}'": "Неуспело постављање %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Филтрирај извозе", "Filter groups": "Групе филтера", "Filter invites": "Филтрирај позивнице", - "Filter languages": "Филтрирај језике", "Filter linkifiers": "Филтрирај линкификаторе", "Filter members": "Филтрирај чланове", "Filter muted users": "Филтрирај утишане кориснике", - "Filter roles": "Филтрирај улоге", "Filter streams": "Филтрирај токове", "Filter subscribers": "Филтрирај чланове", "Filter topics": "Филтрирај теме", @@ -500,6 +523,9 @@ "First message": "Филтрирај поруке", "First time? Read our guidelines for creating and naming streams.": "Први пут сте овде? Прочитајте наше смернице за креирање и именовање токова.", "First time? Read our guidelines for creating user groups.": "Први пут сте овде? Прочитајте наше смернице за прављење корисничких група.", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "На пример, да би сте подесили игралиште за код за блокове кода означене као Python, можете подесити:", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "За више примера и техничке детаље, погледајте документацију центра помоћи за додавање игралишта за код.", "For more examples, see the help center documentation on adding linkifiers.": "За више примера, погледајте документацију центра помоћи за додавање линкифајера.", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY приписивање", "GIPHY integration": "GIPHY интеграција", "General": "Опште", + "Generate URL for an integration": "", "Generate email address": "Генериши адресе е-поште", "Generate invite link": "Генериши везу позивнице", "Generate new API key": "Генериши нови АПИ кључ", @@ -542,14 +569,18 @@ "High contrast mode": "Мод високог контраста", "Hint": "Помоћ", "Hint (up to 80 characters)": "Помоћ (до 80 карактера)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Људи", "Idle": "Мировање", "If you don't know your password, you can reset it.": "Ако не знате вашу лозинку, можете је ресетовати.", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Игнориши деактивиране кориснике", "Image": "Слика", "In a meeting": "На састанку сам", "Inactive": "Неактиван", "Inactive bots": "Неактивни ботови", + "Inbox": "", "Include DMs": "Укључујући директне", "Include content of direct messages in desktop notifications": "Укључи садржај директних порука у обавештењима на рачунару", "Include message content in message notification emails": "Прикажи садржај поруке у е-порукама обавештења", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Долазне веб закачке могу само да шаљу поруке.", "Initiate a search": "Покрени претрагу", "Insert new line": "Уметни нову линију", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Интеграције", "Interface": "Интерфејс", "Invalid URL": "Неисправна адреса", @@ -581,6 +614,8 @@ "Inviting...": "Позивање", "Italic": "Искошено", "January": "Јануар", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "Приступи {realm_name}", "Joined": "Приступио", @@ -599,8 +634,10 @@ "Last 30 days": "Последњих 30 дана", "Last 6 months": "Последњих 6 месеци", "Last active": "Последња активност", + "Last edited {last_edit_timestr}": "", "Last message": "Последња порука", "Last modified": "Последња измена", + "Last moved {last_edit_timestr}": "", "Learn more": "Сазнај више", "Learn more about mentions here.": "Сазнајте више о помињањима овде.", "Learn more about starring messages here.": "Сазнајте више о означавању порука са звездицом овде.", @@ -623,6 +660,7 @@ "Log out": "Одјави ме", "Looking for our integrations or API documentation?": "Трагате за документацијом о нашим интеграцијама или АПИ-јима?", "MOVED": "ПРЕМЕШТЕНО", + "Main menu": "", "Manage bot": "Управљај ботом", "Manage streams": "Управљајте токовима", "Manage this bot": "Управљајте овим ботом", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Помени време које брине о врменској зони", "Mentioned in": "Поменута у", "Mentions": "Помињања", - "Menu": "Мени", "Menus": "Менији", "Message #{stream_name}": "Пошаљите поруку на #{stream_name}", "Message #{stream_name} > {topic_name}": "Пошаљите поруку на #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Пошаљите поруку {recipient_names}", "Message {recipient_name} ({recipient_status})": "Пошаљите поруку {recipient_name} ({recipient_status})", "Messages in all public streams": "Поруке у свим јавним токовима", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Телефон", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "Премести ову и све наредне поруке у овој теми", "Move topic": "Премести тему", - "Moved ({last_edit_timestr})": "Премештено ({last_edit_timestr})", "Moved by {full_name}": "Преместио {full_name}", "Moving messages": "Премештање порука", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Морају бити позвани од стране члана; нови чланови могу да виде само поруке од времена учлањења; сакривен од стране корисника који нису администратори.", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Морају бити позвани од стране члана; нови чланови могу да виде комплетну историју порука; сакривен од стране корисника који нису администратори.", + "Mute": "", "Mute stream": "Утишај ток", "Mute this user": "Утишај овог корисника", "Mute topic": "Утишај тему", @@ -734,38 +773,42 @@ "New password is too weak": "Нова лозинка је превише слаба", "New stream announcements": "Најаве нових токова", "New stream message": "Нова порука тока", + "New stream notifications": "Обавештење о новом току", "New task": "Нови задатак", "New topic": "Нова тема", "New user announcements": "Најаве нових корисника", + "New user notifications": "Обавештење о новом кориснику", "Next message": "Следећа порука", "Next unread direct message": "Следећа непрочитана директна порука", "Next unread topic": "Следећа непрочитана тема", - "Next week": "Следећа недеља", "No bots match your current filter.": "Ниједан бот се не поклапа са тренутним филтером.", + "No conversations match your filters.": "", "No custom emoji.": "Нема прилагођених емотикона.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Ниједан предефинисани ток се не поклапа са тренутним филтером.", "No description.": "Нема описа.", + "No drafts selected": "", "No drafts.": "Нема нацрта.", "No exports.": "Нема извоза.", "No invites match your current filter.": "Ни једна позивница се не поклапа са тренутним филтером.", "No language set": "Није изабран језик", "No linkifiers set.": "Нису подешени линкификатори.", + "No matching results": "", "No matching users.": "Нема корисника који се поклапају.", "No one has read this message yet.": "Још нико није прочитао ову поруку.", "No owner": "Нема власника", "No playgrounds configured.": "Није подешено игралиште за код.", "No restrictions": "Без ограничења", "No scheduled messages.": "", - "No search results": "Нема резултата претраге", "No search results.": "", "No stream subscriptions.": "Нема чланства тока.", "No streams": "Нема токова", "No topics are marked as resolved.": "Ниједна тема није означена као решена.", - "No topics match your current filter.": "Ниједна тема се не поклапа са тренутним филтером.", "No user group subscriptions.": "Нема чланства у корисничким групама.", "No user groups": "Нема корисничких група", "No user to subscribe.": "Нема корисника за чланство.", "No users match your current filter.": "Ни један корисник се не поклапа са са тренутним филтером.", + "No users to add.": "", "No, I'll catch up.": "Не, сустићићу.", "Nobody": "Нико", "Nobody in this Zulip organization will be able to see this email address.": "Нико у овој Зулип организацији неће моћи да види ову адресу е-поште.", @@ -784,6 +827,7 @@ "Notify stream": "Обавести ток", "Notify this user by email?": "Обавести овог корисника путем е-поруке?", "November": "Новембар", + "Numbered list": "", "October": "Октобар", "Old password": "Стара лозинка", "Once you leave this group, you will not be able to rejoin.": "Када напустите ову групу, нећете моћи поново да јој се придружите.", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "Само власници могу да мењају ова подешавања.", "Only stream members can add users to a private stream": "Само чланови тока могу да додају кориснике у приватни ток.", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "Само чланови овог тока могу да уређују дозволе тока.", "Open": "Отвори", "Open message menu": "Отвори мени поруке", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "Молим вас наведите барем једног исправног примаоца.", "Political group": "Политичка група", "Posted by {full_name}": "Написао {full_name}", + "Preferences": "", "Press > for list of topics": "Притисните > за списак тема", "Prevent users from changing their avatar": "Онемогућити кориснике да мењају свој аватар", "Prevent users from changing their email address": "Онемогућити кориснике да мењају своју адресу е-поште", @@ -869,6 +915,7 @@ "Previous message": "Претходна порука", "Privacy": "Приватност", "Privacy settings": "Подешавања приватности", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Приватно, заштићена историја", "Private, shared history": "Приватно, дељена историја", "Profile": "Профил", @@ -883,6 +930,7 @@ "Reactivate bot": "Поново активирај бота", "Reactivate this bot": "Поново активирај овог бота", "Reactivate this user": "Поново активирај овог корисника", + "Reactivate user": "", "Reactivate {name}": "Поново активирај {name}", "Read receipts": "Потврде читања", "Read receipts are currently disabled in this organization.": "Потврде читања су тренутно онемогућена у овој организацији.", @@ -930,6 +978,7 @@ "Saved as draft": "Сачувано као нацрт", "Saved. Please reload for the change to take effect.": "Сачувано. Молим вас поново учитајте да би измене имале ефекат.", "Saving": "Чување", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Погледајте како да подесите е-пошту.", "Select a stream": "", "Select a stream below or change topic name.": "Изаберите ток испод или промените назив теме.", - "Select date and time": "Изаберите датум и време", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Изаберите емотикон", "Select language": "Изаберите језик", + "Select stream": "", "Send": "Пошаљи", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "Пошаљи аутоматизовано обавештење у нову тему", "Send automated notice to old topic": "Пошаљи аутоматизовано обавештење у стару тему", "Send digest emails when I'm away": "Шаљи сумарне е-поруке када нисам активан", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Прикажи преглед постављених и слика преко везе", "Show starred message count": "Прикажи број порука са звездицом", "Show status text": "Прикажи текст статуса", + "Show unread counts for": "", "Show/change your API key": "Прикажи/измени ваш АПИ кључ", "Sign up": "Региструјте се", "Silent mentions do not trigger notifications.": "Тиха помињања не окидају обавештења.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Сложи према процењеном недељном саобраћају", "Sort by name": "Сложи према називу", "Sort by number of subscribers": "Сложи према броју чланова", + "Sort by unread message count": "", "Spoiler": "Спојлер", "Star": "Означи звездицом", "Star selected message": "Означи звездицом изабране поруке", @@ -1024,8 +1080,10 @@ "Subscribe": "Учлани се", "Subscribe them": "Учлани их", "Subscribe to/unsubscribe from selected stream": "Промени чланство за изабране токове", + "Subscribe {full_name} to streams": "", "Subscribed": "Учлањен", "Subscribed streams": "Учлањен у токове", + "Subscribed successfully!": "", "Subscriber count": "Број чланова", "Subscribers": "Чланови", "Successfully subscribed user:": "Успешно претплаћен корисник:", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Тренутно нема речи за упозорење.", "There are no messages here.": "Овде нема порука.", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "Постоји предефинисани емотикон са овим именом. Да ли желите да га преснимите са прилагођеним? Име :{emoji_name}: више неће радити за предефинисани емотикон.", "They administer the following bots:": "Они администрирају следеће ботове:", "This Zulip server is running an old version and should be upgraded.": "Овај Зулип сервер је покренут на старој верзији и требало би га надоградити.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "Ово није јавно доступан разговор.", "This is what a Zulip notification looks like.": "Овако изгледа Зулип обавештење.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Ова порука је сакривена јер сте утишали пошиљаоца.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Временска зона", "Time's up!": "Време је истекло!", "Tip: You can also send \"/poll Some question\"": "Савет: Можете такође послати \"/poll Неко питање\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Да би сте додали наглашавање синтаксе у вишелинијски блок за код, додајте прво кратко име Пигмента језика након провог скупа обрнутих наводника. Такође можете направити блок за код увлачењем сваке линије са 4 размакнице.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Да би сте позвали кориснике, повећајте број лиценци или деактивирајте неактивне кориснике.", "To preserve your reading state, this view does not mark messages as read.": "Да би сачувао ваш статус читања, овај приказ не означава поруке као прочитане.", "Today": "Данас", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Промени чланство", "Toggle the gear menu": "Промени мени зупчаника", "Toggle topic mute": "Промени утишање теме", - "Tomorrow": "Сутра", "Tomorrow at {time}": "", "Topic": "Тема", "Topic muted": "Тема је утишана", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "Искључи невидљивост", "Two factor authentication": "Двофакторска аутентификација", "Type": "Тип", + "URL": "", + "URL for your integration": "", "URL pattern": "Шаблон адресе", - "URL prefix": "Префикс адресе", "URL template": "", "USERS": "КОРИСНИЦИ", "Uncheck all": "Поништи избор", @@ -1139,6 +1197,7 @@ "Unmute this user": "Поништи утишање овог корисника", "Unmute topic": "Поништи утишање теме", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Откачи ток са врха", "Unread": "Непрочитане", "Unread count badge (appears in desktop sidebar and browser tab)": "Беџ са бројем непрочитаних (приказује се са стране на рачунару и у картици прегледача)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "Прикажи директне поруке", "View drafts": "Прикажи нацрте", - "View edit history": "Прикажи историју измена", + "View edit and move history": "", "View file": "Прикажи датотеку", "View in playground": "Прикажи у игралишту", "View in {name}": "Прикажи у {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Јавно доступно", "Wednesday": "Среда", "Week of {date}": "Недеља {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Добродошли назад! Имате {unread_msgs_count} непрочитаних порука. Да ли желите да их све означите као прочитане?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "Које заменице би људи требало да користе када вам се обраћају?", "When you deactivate , they will be immediately logged out.": "Када деактивирате , они ће моментално бити одјављени.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Да ли се специјална помињања попут @all посматрају као помињања у циљу обавештавања.", "Which parts of the email should be included in the Zulip message sent to this stream?": "Које делове е-поруке би требало уврстити у Зулип поруку послату у овај ток?", "Who can access the stream?": "Ко може да приступи овом току?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Ко може да креира и управља групама корисника", "Who can create private streams": "Ко може да креира приватне токове", "Who can create public streams": "Ко може да креира јавне токове", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Ко може да креира јавне токове на вебу", "Who can delete their own messages": "Ко може да брише своје поруке", - "Who can invite users to this organization": "Ко може да позива кориснике у ову организацију", "Who can move messages to another stream": "Ко може да премешта поруке у други ток", "Who can move messages to another topic": "Ко може да премешта поруке у другу тему", "Who can post to the stream?": "Ко може да пише у ток?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "Ко може да прекине претплату осталих из овог тока?", "Who can use @all/@everyone mentions in large streams": "Ко може да користи @all/@everyone помињања у великим токовима", "Who can use direct messages": "Ко може да користи директне поруке", @@ -1268,14 +1329,17 @@ "You and": "Ви и", "You and {display_reply_to}": "Ви и {display_reply_to}", "You and {recipients}": "Ви и {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "Није вам дозвољено да шаљете директне поруке у овој организацији.", "You are not currently subscribed to this stream.": "Тренутно нисте учлањени у овај ток.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Шаљете поруку у решену тему. Можете је послати као што јесте или прво поништити решење теме.", "You are using an old version of the Zulip desktop app with known security bugs.": "Користите стару верзију Зулип апликације за рачунар која садржи познате безбедоносне пропусте.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Нисте учлањени у овај ток и нико још није говорио на ову тему!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Такође можете направити табеле са овом Markdown синтаксом за табеле.", "You can combine search filters as needed.": "Можете комбиновати филтере претраге према потреби.", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "Можете потпуно приступити заједници и учествовати у разговорима креирањем Зулип налога у овој организацији.", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Немате дозволу да користите @-помињања у овом току.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Добијате", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Утишали сте .", + "You have muted this topic": "", "You have no active bots.": "Немате активних ботова.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "Још увек немате директне поруке са овим корисницима.", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Још увек нисте утишали ниједног корисника.", "You have not sent any direct messages to yourself yet!": "Још увек нисте послали ниједну директну поруку себи!", "You have not uploaded any files.": "Још увек нисте поставили ниједну датотеку.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Још увек нисте поменути!", "You haven't received any messages sent by {person} yet.": "Још увек нисте примили ниједну поруку од {person}.", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "МОрате бити администратор организације да би сте направили ток без учлањивања.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Морате да покренете Zephyr дуплирање да би сте слали поруке!", "You searched for:": "Тражили сте:", "You subscribed to stream ": "", "You type": "Куцате", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Нисте учлањени у овај ток. Нећете бити обавештени ако вас други корисници помену у својим порукама.", "Your API key:": "Ваш АПИ кључ", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "Ваш Зулип налог на је деактивиран, и више нисте у могућности да се пријавите.", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "Зулип сервер {display_version}", "Zulip Server {display_version} (modified)": "Зулип сервер {display_version} (измењен)", "Zulip Server {display_version} (patched)": "Зулип сервер {display_version} (закрпљен)", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Зулип мора да пошаље е-поруку да би потврдио корисничку адресу и слао обавештења.", "Zulip needs your permission to enable desktop notifications.": "Зулипу је потребна ваша дозвола да би омогућио приказ обавештења на рачунару.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Зулип преводи су допринос наше предивне заједнице преводиоца волонтера. Ако желите да помогнете, погледајте водич за превод Зулипа.", "[Configure]": "[Подеси]", - "[Disable]": "[Онемогући]", - "[More…]": "[Више…]", "[Quoting…]": "[Цитирање…]", - "[Unset]": "[Поништи]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "и {remaining_senders, plural, one {1 other} other {# others}}.", "back to streams": "повратак на токове", "beta": "бета", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "не примењује се на модераторе и администраторе", "group direct messages with {recipient}": "групне директне поруке са {recipient}", "he/him": "он/њега", - "in 1 hour": "за 1 сат", - "in 20 minutes": "за 20 минута", - "in 3 hours": "за 3 сата", "invisible mode off": "искључује невидљивост", "leafy green vegetable": "лиснато зелено поврће", "marketing": "маркетинг", "more conversations": "више разговора", "more topics": "више тема", - "or": "или", "she/her": "она/њу", "they/them": "они/њих", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {Завршено! {N} порука означена као прочитана.} few {Завршено! {N} порука означено као прочитано.} other {Завршено! {N} порука означено као прочитано.}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} дана раније", "{full_name} is typing…": "{full_name} пише…", "{hours} hours ago": "{hours} сати раније", - "{items_selected} selected": "{items_selected} изабрано", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} минута за измену", "{minutes} minutes ago": "{minutes} минута раније", "{modal_heading_text}": "{modal_heading_text}", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {Ова порука је прочитана од стране {num_of_people} особе:} few {Ова порука је прочитана од стране {num_of_people} људи:} other {Ова порука је прочитана од стране {num_of_people} људи:}}", "{seconds} sec to edit": "{seconds} за измену", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "{user_time} локално време", "{username} [said]({link_to_message}):": "{username} [је рекао]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} је реаговао са {emoji_name}" diff --git a/locale/sv/LC_MESSAGES/django.po b/locale/sv/LC_MESSAGES/django.po index e9a6b94808..36b0cab7af 100644 --- a/locale/sv/LC_MESSAGES/django.po +++ b/locale/sv/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Sven Stark , 2020\n" "Language-Team: Swedish (http://app.transifex.com/zulip/zulip/language/sv/)\n" @@ -18,46 +18,47 @@ msgstr "" "Language: sv\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Ej tillåtet för gäster" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "ogiltig organisation" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Publika strömmar" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Privata strömmar" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Direktmeddelanden" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Gruppera direktmeddelanden" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Inga anlysdata tillgängliga. Var god kontakta serverns administratör." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -118,29 +119,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Du måste fakturera för minst {} användare." - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Något gick fel. Uppdatera sidan." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Något gick fel. Vänta några sekunder och försök igen." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -172,7 +175,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -188,14 +191,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -207,7 +210,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -257,7 +260,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -559,9 +562,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -579,9 +582,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -591,9 +594,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -856,51 +859,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Gå med %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Tack för att du vill vara med!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Fortfarande inget mejl? Vi kan skicka det igen." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Kolla in skräpmapp för säkerhets skull." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Försök nu." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Meddelanden" @@ -1148,6 +1151,159 @@ msgstr "Vanliga anävndare" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1155,6 +1311,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1168,22 +1357,9 @@ msgstr "Vi har fått en begäran om att ändra mejladressan för %(realm_uri)s msgid "Confirm email change" msgstr "Bekräfta ändrad mejladress" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1238,17 +1414,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1353,225 +1518,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1656,14 +1602,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1695,21 +1641,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1717,21 +1687,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1774,29 +1744,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1959,6 +1929,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1987,6 +1965,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2375,7 +2425,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2875,290 +2925,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3174,8 +3227,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3194,18 +3247,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3214,38 +3281,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3255,56 +3322,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3319,94 +3389,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Nytt lösenord" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3471,31 +3547,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3528,166 +3604,166 @@ msgstr "" msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3695,6 +3771,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3736,7 +3820,7 @@ msgid "Settings" msgstr "Inställningar" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3749,264 +3833,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4021,669 +4113,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Bara admins" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Publik" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "egna emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4751,66 +4932,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4818,22 +5032,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4849,26 +5064,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4885,36 +5101,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4927,42 +5143,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4970,7 +5187,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4978,107 +5195,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5094,97 +5304,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5231,6 +5452,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5241,7 +5466,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5260,27 +5486,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5300,28 +5526,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5340,7 +5566,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5348,19 +5574,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5377,47 +5604,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/sv/translations.json b/locale/sv/translations.json index b86a77ca8a..b2cadb7d9a 100644 --- a/locale/sv/translations.json +++ b/locale/sv/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(inget ämne)", + "(or )": "", "(you)": "(du)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Lägg till varningsord", "Add all users": "", "Add another user...": "Lägg till ytterligare användare", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "Lägg till emoji", "Add emoji reaction": "Lägg till emojireaktion", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "Lägg till linkifierare", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Lägg till ny förvald ström", "Add new user group": "", "Add one or more users": "Lägg till en eller flera användare", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Lägg till uppgift", "Add video call": "Lägg till videosamtal", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Lades till!", "Added successfully.": "", "Administrator": "Administratör", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "Alla meddelanden", "All messages including muted streams": "", "All streams": "Alla strömmar", @@ -136,9 +142,11 @@ "Allow subdomains": "Tillåt subdomäner", "Allowed domains": "Tillåtna domäner", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Alltid", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "En API-nyckel kan användas för att få programmeringstillgång till ett Zulip-konto. Alla med till gång till din API-nyckel kan läsa dina meddlen, skicka meddelanden från dig och uppträda som dig på Zulip, därför bör du skydda din API-byckel lika noga som ditt lösenord.
Vår rekommendation är att skapa botar och använda deras API för att kommunicera med Zulips API, så länge uppgiften inte kräver tillgång till ditt konto.", "An hour ago": "En timme sedan", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Avatar from Gravatar", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Fakturering", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Bot-typ", "Bots": "Bottar", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "Genom att avaktivera ditt konto kommer du att loggas ut omedelbart.", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Stäng", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "Skriv ditt meddelande här", "Compose your message here...": "Skriv ditt meddelande här...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Konvertera emoji innan meddelandet skickas (:) blir 😃)", "Cookie Bot": "Cookie Bot", "Copied!": "Kopierat!", + "Copy URL": "", "Copy address": "", "Copy and close": "Kopiera och stäng", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Egeninställd", + "Custom URL": "", "Custom emoji": "egna emoji", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "Avaktiverat", "Deactivated users": "Avaktiverade användare", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "Förvalda ämnen", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Förvalda användarinställningar", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Radera", "Delete alert word": "Radera varningsort", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Tabort utkast", "Delete file": "Ta bort fil", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "Ta bort logga", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "Meddelad som föråldrad", "Description": "Beskrivning", + "Deselect draft": "", "Desktop": "Skrivbord", "Desktop & mobile apps": "Dator- och mobilappar", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "Direktmeddelanden", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Avaktiverad", "Discard": "Ångra", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Visa inställningar", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Domän", "Don’t allow disposable email addresses": "Tillåt inte engångsepostadresser", "Download": "Ladda ner", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Redigera markerat utkast", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Redigera ditt senaste medleande", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "Filter strömmar", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "Första meddelande", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "Allmän", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Generera inbjudningslänk", "Generate new API key": "Generera ny API nyckeln", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Människor", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Bild", "In a meeting": "", "Inactive": "", "Inactive bots": "Inaktiva botar", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "Starta sökning", "Insert new line": "Sätt in ny rad", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Integreringar", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "Bjuder in...", "Italic": "", "January": "Januari ", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "Förra meddelandet", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Logga ut", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Hantera strömmar", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Omnämnanden", - "Menu": "Meny", "Menus": "Menyer", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "Nytt meddelande i ström", + "New stream notifications": "", "New task": "", "New topic": "Nytt ämne", "New user announcements": "", + "New user notifications": "", "Next message": "Nästa meddelande", "Next unread direct message": "", "Next unread topic": "Nästa olästa ämne", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "Inga sökträffar", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Nej, jag kommer ikapp.", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Öppen", "Open message menu": "Öppna meddelandemenyn", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "föregående meddelande", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Spara utkast", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Se hur du kan ställa in mejl.", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Skicka", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Gå med", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "Sjärnmarkera meddelande", @@ -1024,8 +1080,10 @@ "Subscribe": "Prenumerera", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "Prenumererad", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Tidszon", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Idag", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "Växla kugghjulsmenyn", "Toggle topic mute": "Växla tyst ämne", - "Tomorrow": "Imorgon", "Tomorrow at {time}": "", "Topic": "Ämne", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "ANVÄNDARE", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Visa utkast", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "Onsdag", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Du och", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Du prenumererar inte på denna strömmen ännu och ingen har skrivit om det heller.", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Du får", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Du har inte blivit omnämnd ännu!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "Du skriver", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip behöver skicka mejl för att bekräfta användares mejladresser och skicka notiser", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "eller", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/ta/LC_MESSAGES/django.po b/locale/ta/LC_MESSAGES/django.po index bbec79f225..1933fbdfdf 100644 --- a/locale/ta/LC_MESSAGES/django.po +++ b/locale/ta/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-26 03:33+0000\n" +"POT-Creation-Date: 2023-10-01 20:55+0000\n" "PO-Revision-Date: 2018-04-11 21:06+0000\n" "Last-Translator: Tim Abbott \n" "Language-Team: Tamil (http://www.transifex.com/zulip/zulip/language/ta/)\n" @@ -18,54 +18,54 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:628 zerver/decorator.py:646 +#: analytics/views/stats.py:111 zerver/decorator.py:628 zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 #, fuzzy #| msgid "All streams" msgid "Public streams" msgstr "அனைத்து தகவலரங்கங்கள்" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 #, fuzzy #| msgid "Private messages" msgid "Private streams" msgstr "தனிப்பட்ட செய்தி" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 #, fuzzy #| msgid "Private messages" msgid "Direct messages" msgstr "தனிப்பட்ட செய்தி" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 #, fuzzy #| msgid "Private messages" msgid "Group direct messages" msgstr "தனிப்பட்ட செய்தி" -#: analytics/views/stats.py:318 +#: analytics/views/stats.py:319 #, python-brace-format msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:306 -#: zerver/views/streams.py:310 zerver/views/streams.py:318 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 #, fuzzy #| msgid "Enable notifications" msgid "Invalid parameters" @@ -124,32 +124,32 @@ msgid "" "{num_invites} users." msgstr "" -#: corporate/lib/stripe.py:113 +#: corporate/lib/stripe.py:112 #, python-brace-format msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:120 +#: corporate/lib/stripe.py:119 #, python-brace-format msgid "" "Invoices with more than {max_licenses} licenses can't be processed from this " "page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:228 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "" -#: corporate/lib/stripe.py:229 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "" -#: corporate/lib/stripe.py:303 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "" -#: corporate/lib/stripe.py:1023 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You " @@ -273,7 +273,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:410 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -585,9 +585,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:727 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -605,9 +605,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:733 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -617,9 +617,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:730 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -940,7 +940,7 @@ msgstr "" msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:251 templates/zerver/app/index.html:253 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 #, fuzzy #| msgid "Private messages" msgid "Messages" @@ -971,7 +971,6 @@ msgstr "" #: templates/zerver/billing_nav.html:4 #: templates/zerver/development/integrations_dev_panel.html:19 -#: templates/zerver/emails/compiled/followup_day2.html:28 #: templates/zerver/portico-header.html:5 #: templates/zerver/portico-header.html:9 msgid "Zulip" @@ -1208,8 +1207,163 @@ msgstr "" msgid "Digest" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:9 -#: templates/zerver/emails/compiled/notify_change_in_email.html:9 +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn " +"more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, fuzzy, python-format +#| msgid "Administrators" +msgid "Organization URL: %(organization_url)s" +msgstr "நிர்வாகிகள்" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +#, fuzzy +#| msgid "Administrators" +msgid "Go to organization" +msgstr "நிர்வாகிகள்" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about " +"demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators " +"at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1217,7 +1371,41 @@ msgstr "" msgid "Hi," msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:11 +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a " +"password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +#, fuzzy +#| msgid "Confirm password" +msgid "Confirm and set password" +msgstr "கடவுச்சொல்லை உறுதிப்படுத்துக" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1227,662 +1415,40 @@ msgid "" "please click below:" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:12 #: templates/zerver/emails/confirm_new_email.html:11 msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/compiled/confirm_new_email.html:14 -#: templates/zerver/emails/confirm_new_email.html:13 +#: templates/zerver/emails/confirm_new_email.subject.txt:1 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." +msgid "Verify your new email address for %(organization_host)s" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:11 #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 msgid "You have requested a new Zulip organization. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:13 #: templates/zerver/emails/confirm_registration.html:12 #: templates/zerver/emails/confirm_registration.txt:4 msgid "You recently signed up for Zulip. Awesome!" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:18 #: templates/zerver/emails/confirm_registration.html:17 msgid "" "Click the button below to create the organization and register your account." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:20 #: templates/zerver/emails/confirm_registration.html:19 msgid "Click the button below to complete registration." msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:22 -#: templates/zerver/emails/compiled/invitation.html:17 -#: templates/zerver/emails/compiled/invitation_reminder.html:15 #: templates/zerver/emails/confirm_registration.html:21 #: templates/zerver/emails/invitation.html:16 #: templates/zerver/emails/invitation_reminder.html:14 msgid "Complete registration" msgstr "" -#: templates/zerver/emails/compiled/confirm_registration.html:24 -#: templates/zerver/emails/compiled/invitation.html:20 -#: templates/zerver/emails/compiled/realm_reactivation.html:20 -#, python-format -msgid "" -"Contact us any time at %(support_email)s if you run into trouble, have any " -"feedback, or just want to chat!" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:8 -#, python-format -msgid "" -"\n" -"Your Zulip account on %(realm_uri)s has been deactivated, and you will " -"no longer be able to log in.\n" -msgstr "" - -#: templates/zerver/emails/compiled/deactivate.html:15 -#: templates/zerver/emails/deactivate.html:15 -#: templates/zerver/emails/deactivate.txt:6 -msgid "The administrators provided the following comment:" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:28 -#: templates/zerver/emails/digest.html:27 -#, fuzzy -#| msgid "All streams" -msgid "New streams" -msgstr "அனைத்து தகவலரங்கங்கள்" - -#: templates/zerver/emails/compiled/digest.html:35 -#: templates/zerver/emails/digest.html:34 -msgid "Click here to log in to Zulip and catch up." -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:40 -#: templates/zerver/emails/compiled/followup_day2.html:34 -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/custom_email_base.pre.html:18 -#: templates/zerver/emails/digest.html:39 -#: templates/zerver/emails/notify_new_login.html:46 -msgid "Manage email preferences" -msgstr "" - -#: templates/zerver/emails/compiled/digest.html:41 -#: templates/zerver/emails/digest.html:40 -#, fuzzy -#| msgid "Enable notifications" -msgid "Unsubscribe from digest emails" -msgstr "அறிவிப்புகளை இயக்கு" - -#: templates/zerver/emails/compiled/email_base_default.html:95 -#: templates/zerver/emails/compiled/email_base_marketing.html:95 -#: templates/zerver/emails/email_base_default.html:33 -#: templates/zerver/emails/email_base_marketing.html:33 -msgid "Swimming fish" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:9 -#: templates/zerver/emails/find_team.html:8 -#: templates/zerver/emails/find_team.txt:1 -msgid "Thanks for your request!" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:11 -#, python-format -msgid "" -"Your email address %(email)s has accounts with the following Zulip " -"organizations hosted by %(external_host)s:" -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:19 -#: templates/zerver/emails/find_team.html:18 -#: templates/zerver/emails/find_team.txt:10 -msgid "" -"If you have trouble logging in, please contact Zulip support by replying to " -"this email." -msgstr "" - -#: templates/zerver/emails/compiled/find_team.html:21 -#: templates/zerver/emails/find_team.html:20 -#: templates/zerver/emails/find_team.txt:13 -msgid "Thanks for using Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:9 -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:14 -msgid "" -"You've created a demo Zulip organization. Note that this organization will " -"be automatically deleted in 30 days. Learn more about demo organizations here!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:16 -#, python-format -msgid "You've created the new Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:19 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:24 -msgid "Your account details:" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:27 -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, fuzzy, python-format -#| msgid "Administrators" -msgid "Organization URL: %(organization_url)s" -msgstr "நிர்வாகிகள்" - -#: templates/zerver/emails/compiled/followup_day1.html:31 -#, python-format -msgid "Username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:38 -#, python-format -msgid "Email: %(email)s" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:42 -#, python-format -msgid "" -"(you'll need these to sign in to the mobile and desktop " -"apps)" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:47 -#, python-format -msgid "" -"Check out our guide for admins, become a Zulip pro with a " -"few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:49 -#, python-format -msgid "" -"Learn more about Zulip, become a pro with a few keyboard shortcuts, or dive right in!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:54 -msgid "Cheers," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day1.html:55 -#: templates/zerver/emails/compiled/notify_change_in_email.html:15 -#: templates/zerver/emails/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.txt:7 -#, fuzzy -#| msgid "Zulip" -msgid "Team Zulip" -msgstr "சுலிப்பு" - -#: templates/zerver/emails/compiled/followup_day1.html:59 -msgid "" -"PS: Follow us on Twitter, star us on GitHub, or chat with us live on the Zulip community server!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:9 -msgid "Hey," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:11 -msgid "" -"I wanted to share one last thing with you: a few tips about topics, since " -"mastering topics is a key part of being a Zulip power user." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:15 -msgid "" -"Topics are like email subject lines. The big difference, though, is that " -"they're really short and lightweight. Two or three words will do it. Don't " -"overthink 'em—you can always edit the message later!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:18 -msgid "Good topics: design mockup, Bug 345, acme burgers" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:19 -msgid "" -"Not recommended: \"What do people think of this new design mockup?\", \"I'm " -"looking at Bug 345\", \"Is Acme Burgers open for lunch?\"" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:22 -msgid "Example of a topic that is too long" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:24 -msgid "" -"Why bother with topics? Well, two reasons: it makes conversations clearer " -"(imagine if email didn't have them!), and it lets you more efficiently catch " -"up on what's happened while you're away—read the topics that are relevant to " -"you, and ignore the ones that aren't!" -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:26 -msgid "Take it for a spin now." -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:28 -#: templates/zerver/emails/compiled/notify_new_login.html:42 -#: templates/zerver/emails/notify_new_login.html:40 -#: templates/zerver/emails/notify_new_login.txt:20 -msgid "Thanks," -msgstr "" - -#: templates/zerver/emails/compiled/followup_day2.html:35 -#, fuzzy -#| msgid "Enable notifications" -msgid "Unsubscribe from welcome emails" -msgstr "அறிவிப்புகளை இயக்கு" - -#: templates/zerver/emails/compiled/invitation.html:10 -#: templates/zerver/emails/invitation.html:9 -#: templates/zerver/emails/invitation.txt:1 -msgid "Hi there," -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:13 -#, python-format -msgid "" -"%(referrer_name)s wants you to join them on Zulip — the team communication " -"tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation.html:16 -#: templates/zerver/emails/compiled/invitation_reminder.html:14 -#: templates/zerver/emails/invitation.html:15 -#: templates/zerver/emails/invitation_reminder.html:13 -msgid "To get started, click the button below." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:9 -#: templates/zerver/emails/invitation_reminder.html:8 -#: templates/zerver/emails/invitation_reminder.txt:1 -msgid "Hi again," -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:11 -#, python-format -msgid "" -"This is a friendly reminder that %(referrer_name)s wants you to join them on " -"Zulip — the team communication tool designed for productivity." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:19 -#: templates/zerver/emails/invitation_reminder.html:18 -#: templates/zerver/emails/invitation_reminder.txt:8 -msgid "This is the last reminder you'll receive for this invitation." -msgstr "" - -#: templates/zerver/emails/compiled/invitation_reminder.html:23 -#: templates/zerver/emails/invitation_reminder.html:22 -#, python-format -msgid "" -"\n" -" This invitation expires in two days. If the invitation expires,\n" -" you'll need to ask %(referrer_name)s for another one.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:18 -#, python-format -msgid "" -"This email does not include message content because your organization has " -"disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:20 -#, python-format -msgid "" -"This email does not include message content because you have disabled message content appearing in " -"email notifications." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:30 -#: templates/zerver/emails/missed_message.html:29 -#: templates/zerver/emails/missed_message.txt:25 -msgid "You are receiving this because you were personally mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:32 -#: templates/zerver/emails/missed_message.html:31 -#: templates/zerver/emails/missed_message.txt:27 -#, python-format -msgid "" -"You are receiving this because @%(mentioned_user_group_name)s was mentioned." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:34 -#: templates/zerver/emails/missed_message.html:39 -#: templates/zerver/emails/missed_message.txt:35 -#, python-format -msgid "" -"You are receiving this because everyone was mentioned in #%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:36 -#: templates/zerver/emails/missed_message.html:43 -#: templates/zerver/emails/missed_message.txt:39 -#, python-format -msgid "" -"You are receiving this because you have email notifications enabled for " -"#%(stream_name)s." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:39 -#, python-format -msgid "" -"Reply to this email directly, view it in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:41 -#, python-format -msgid "" -"View or reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:43 -#, python-format -msgid "" -"Reply in %(realm_name)s Zulip, or manage email preferences." -msgstr "" - -#: templates/zerver/emails/compiled/missed_message.html:45 -#, python-format -msgid "" -"\n" -" Do not reply to this email. This Zulip server is not configured to " -"accept incoming emails (help).\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:11 -#: templates/zerver/emails/notify_change_in_email.html:10 -#, python-format -msgid "" -"The email associated with your Zulip account was recently changed to " -"%(new_email)s. If you did not request this change, please contact us " -"immediately at %(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_change_in_email.html:14 -#: templates/zerver/emails/notify_change_in_email.html:13 -#: templates/zerver/emails/notify_change_in_email.txt:6 -msgid "Best," -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:4 -#: templates/zerver/emails/notify_new_login.html:4 -#, fuzzy, python-format -#| msgid "Administrators" -msgid "" -"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" -msgstr "நிர்வாகிகள்" - -#: templates/zerver/emails/compiled/notify_new_login.html:13 -#: templates/zerver/emails/notify_new_login.html:12 -#: templates/zerver/emails/notify_new_login.txt:1 -msgid "We noticed a recent login for the following Zulip account." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:18 -#: templates/zerver/emails/notify_new_login.html:16 -#, fuzzy, python-format -#| msgid "Administrators" -msgid "Organization: %(organization_link)s" -msgstr "நிர்வாகிகள்" - -#: templates/zerver/emails/compiled/notify_new_login.html:21 -#: templates/zerver/emails/notify_new_login.html:19 -#: templates/zerver/emails/notify_new_login.txt:5 -#, python-format -msgid "Email: %(user_email)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:24 -#: templates/zerver/emails/notify_new_login.html:22 -#: templates/zerver/emails/notify_new_login.txt:7 -#, python-format -msgid "Time: %(login_time)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:27 -#: templates/zerver/emails/notify_new_login.html:25 -#: templates/zerver/emails/notify_new_login.txt:9 -#, python-format -msgid "Device: %(device_browser)s on %(device_os)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:30 -#: templates/zerver/emails/notify_new_login.html:28 -#: templates/zerver/emails/notify_new_login.txt:11 -#, python-format -msgid "IP address: %(device_ip)s" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:35 -#: templates/zerver/emails/notify_new_login.html:33 -#: templates/zerver/emails/notify_new_login.txt:14 -msgid "If this was you, great! There's nothing else you need to do." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:38 -#, python-format -msgid "" -"If you do not recognize this login, or think your account may have been " -"compromised, please reset your password or contact us immediately at " -"%(support_email)s." -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:43 -#: templates/zerver/emails/notify_new_login.html:41 -#: templates/zerver/emails/notify_new_login.txt:21 -msgid "Zulip Security" -msgstr "" - -#: templates/zerver/emails/compiled/notify_new_login.html:48 -#: templates/zerver/emails/notify_new_login.html:46 -#, fuzzy -#| msgid "Enable notifications" -msgid "Unsubscribe from login notifications" -msgstr "அறிவிப்புகளை இயக்கு" - -#: templates/zerver/emails/compiled/password_reset.html:10 -#: templates/zerver/emails/password_reset.html:9 -#: templates/zerver/emails/password_reset.txt:1 -#, python-format -msgid "" -"Somebody (possibly you) requested a new password for the Zulip account " -"%(email)s on %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:14 -#: templates/zerver/emails/password_reset.html:13 -msgid "Click the button below to reset your password." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:15 -#: templates/zerver/emails/password_reset.html:14 -#, fuzzy -#| msgid "Password" -msgid "Reset password" -msgstr "கடவுச்சொல்" - -#: templates/zerver/emails/compiled/password_reset.html:20 -#, python-format -msgid "" -"You previously had an account on %(organization_url)s, but it has been " -"deactivated. You can contact an organization administrator to reactivate your account." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:22 -#: templates/zerver/emails/password_reset.html:21 -#: templates/zerver/emails/password_reset.txt:11 -msgid "You do not have an account in that Zulip organization." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:27 -#: templates/zerver/emails/password_reset.html:26 -#: templates/zerver/emails/password_reset.txt:16 -msgid "You do have active accounts in the following organization(s)." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:34 -#: templates/zerver/emails/password_reset.html:32 -#: templates/zerver/emails/password_reset.txt:21 -msgid "" -"You can try logging in or resetting your password in the organization(s) " -"above." -msgstr "" - -#: templates/zerver/emails/compiled/password_reset.html:40 -#: templates/zerver/emails/password_reset.html:38 -#: templates/zerver/emails/password_reset.txt:25 -msgid "" -"If you do not recognize this activity, you can safely ignore this email." -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:8 -#: templates/zerver/emails/realm_auto_downgraded.html:8 -#, python-format -msgid "" -"\n" -" Your organization, %(organization_name_with_link)s, has been downgraded " -"to the Zulip Cloud\n" -" Free plan because of unpaid invoices. The unpaid invoices have been " -"voided.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:15 -#: templates/zerver/emails/realm_auto_downgraded.html:15 -#, python-format -msgid "" -"\n" -" To continue on the Zulip Cloud Standard plan, please upgrade again by " -"going to %(upgrade_url)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_auto_downgraded.html:22 -#: templates/zerver/emails/realm_auto_downgraded.html:22 -#, python-format -msgid "" -"\n" -" If you think this was a mistake or need more details, please reach out " -"to us at %(support_email)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:9 -#: templates/zerver/emails/realm_reactivation.html:8 -#: templates/zerver/emails/realm_reactivation.txt:1 -#, python-format -msgid "Dear former administrators of %(realm_name)s," -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:11 -#: templates/zerver/emails/realm_reactivation.html:10 -#: templates/zerver/emails/realm_reactivation.txt:4 -#, python-format -msgid "" -"One of your administrators requested reactivation of the previously " -"deactivated Zulip organization hosted at %(realm_uri)s." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:14 -#: templates/zerver/emails/realm_reactivation.html:13 -msgid "Click the button below to reactivate your organization." -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:15 -#: templates/zerver/emails/realm_reactivation.html:14 -msgid "Reactivate organization" -msgstr "" - -#: templates/zerver/emails/compiled/realm_reactivation.html:18 -#: templates/zerver/emails/realm_reactivation.html:17 -#: templates/zerver/emails/realm_reactivation.txt:10 -msgid "" -"If the request was in error, you can take no action and this link will " -"expire in 24 hours." -msgstr "" - -#: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "" - #: templates/zerver/emails/confirm_registration.subject.txt:2 msgid "Create your Zulip organization" msgstr "" @@ -1910,15 +1476,10 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators " -"at %(support_email)s." +#: templates/zerver/emails/custom_email_base.pre.html:18 +#: templates/zerver/emails/digest.html:39 +#: templates/zerver/emails/notify_new_login.html:46 +msgid "Manage email preferences" msgstr "" #: templates/zerver/emails/custom_email_base.pre.html:18 @@ -1935,6 +1496,11 @@ msgid "" "deactivated, and you will no longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/deactivate.html:15 +#: templates/zerver/emails/deactivate.txt:6 +msgid "The administrators provided the following comment:" +msgstr "" + #: templates/zerver/emails/deactivate.subject.txt:1 #, python-format msgid "Notification of account deactivation on %(realm_name)s" @@ -1948,6 +1514,22 @@ msgid "" "longer be able to log in.\n" msgstr "" +#: templates/zerver/emails/digest.html:27 +#, fuzzy +#| msgid "All streams" +msgid "New streams" +msgstr "அனைத்து தகவலரங்கங்கள்" + +#: templates/zerver/emails/digest.html:34 +msgid "Click here to log in to Zulip and catch up." +msgstr "" + +#: templates/zerver/emails/digest.html:40 +#, fuzzy +#| msgid "Enable notifications" +msgid "Unsubscribe from digest emails" +msgstr "அறிவிப்புகளை இயக்கு" + #: templates/zerver/emails/digest.subject.txt:1 #, python-format msgid "Zulip digest for %(realm_name)s" @@ -1968,6 +1550,16 @@ msgstr "" msgid "Unsubscribe from digest emails:" msgstr "அறிவிப்புகளை இயக்கு" +#: templates/zerver/emails/email_base_default.html:33 +#: templates/zerver/emails/email_base_marketing.html:33 +msgid "Swimming fish" +msgstr "" + +#: templates/zerver/emails/find_team.html:8 +#: templates/zerver/emails/find_team.txt:1 +msgid "Thanks for your request!" +msgstr "" + #: templates/zerver/emails/find_team.html:10 #, python-format msgid "" @@ -1975,6 +1567,18 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" +#: templates/zerver/emails/find_team.html:18 +#: templates/zerver/emails/find_team.txt:10 +msgid "" +"If you have trouble logging in, please contact Zulip support by replying to " +"this email." +msgstr "" + +#: templates/zerver/emails/find_team.html:20 +#: templates/zerver/emails/find_team.txt:13 +msgid "Thanks for using Zulip!" +msgstr "" + #: templates/zerver/emails/find_team.subject.txt:1 msgid "Your Zulip accounts" msgstr "" @@ -1986,207 +1590,9 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn " -"more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -#, fuzzy -#| msgid "Administrators" -msgid "Go to organization" -msgstr "நிர்வாகிகள்" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about " -"demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each " -"message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat " -"about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages, rename topics, or even move a topic to a different " -"stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, fuzzy, python-format -#| msgid "Enable notifications" -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "அறிவிப்புகளை இயக்கு" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." +#: templates/zerver/emails/invitation.html:9 +#: templates/zerver/emails/invitation.txt:1 +msgid "Hi there," msgstr "" #: templates/zerver/emails/invitation.html:12 @@ -2196,6 +1602,11 @@ msgid "" "communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation.html:15 +#: templates/zerver/emails/invitation_reminder.html:13 +msgid "To get started, click the button below." +msgstr "" + #: templates/zerver/emails/invitation.subject.txt:1 #, python-format msgid "%(referrer_full_name)s has invited you to join %(referrer_realm_name)s" @@ -2213,6 +1624,11 @@ msgstr "" msgid "To get started, click the link below." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:8 +#: templates/zerver/emails/invitation_reminder.txt:1 +msgid "Hi again," +msgstr "" + #: templates/zerver/emails/invitation_reminder.html:10 #, python-format msgid "" @@ -2220,6 +1636,20 @@ msgid "" "Zulip — the team communication tool designed for productivity." msgstr "" +#: templates/zerver/emails/invitation_reminder.html:18 +#: templates/zerver/emails/invitation_reminder.txt:8 +msgid "This is the last reminder you'll receive for this invitation." +msgstr "" + +#: templates/zerver/emails/invitation_reminder.html:22 +#, python-format +msgid "" +"\n" +" This invitation expires in two days. If the invitation expires,\n" +" you'll need to ask %(referrer_name)s for another one.\n" +" " +msgstr "" + #: templates/zerver/emails/invitation_reminder.subject.txt:1 #, python-format msgid "Reminder: Join %(referrer_name)s at %(referrer_realm_name)s" @@ -2244,14 +1674,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators " -"at %(email)s." +"at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -2270,6 +1700,18 @@ msgid "" "content appearing in email notifications." msgstr "" +#: templates/zerver/emails/missed_message.html:29 +#: templates/zerver/emails/missed_message.txt:25 +msgid "You are receiving this because you were personally mentioned." +msgstr "" + +#: templates/zerver/emails/missed_message.html:31 +#: templates/zerver/emails/missed_message.txt:27 +#, python-format +msgid "" +"You are receiving this because @%(mentioned_user_group_name)s was mentioned." +msgstr "" + #: templates/zerver/emails/missed_message.html:33 #: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 @@ -2287,6 +1729,13 @@ msgid "" "enabled for topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 +#, python-format +msgid "" +"You are receiving this because everyone was mentioned in #%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:41 #: templates/zerver/emails/missed_message.txt:37 msgid "" @@ -2294,6 +1743,14 @@ msgid "" "topics you follow." msgstr "" +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 +#, python-format +msgid "" +"You are receiving this because you have email notifications enabled for " +"#%(stream_name)s." +msgstr "" + #: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" @@ -2390,6 +1847,26 @@ msgstr "" msgid "Manage email preferences: " msgstr "" +#: templates/zerver/emails/notify_change_in_email.html:10 +#, python-format +msgid "" +"The email associated with your Zulip account was recently changed to " +"%(new_email)s. If you did not request this change, please contact us " +"immediately at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:13 +#: templates/zerver/emails/notify_change_in_email.txt:6 +msgid "Best," +msgstr "" + +#: templates/zerver/emails/notify_change_in_email.html:14 +#: templates/zerver/emails/notify_change_in_email.txt:7 +#, fuzzy +#| msgid "Zulip" +msgid "Team Zulip" +msgstr "சுலிப்பு" + #: templates/zerver/emails/notify_change_in_email.subject.txt:1 #, python-format msgid "Zulip email changed for %(realm_name)s" @@ -2403,6 +1880,53 @@ msgid "" "immediately at <%(support_email)s>." msgstr "" +#: templates/zerver/emails/notify_new_login.html:4 +#, fuzzy, python-format +#| msgid "Administrators" +msgid "" +"Organization: %(organization_url)s Time: %(login_time)s Email: %(user_email)s" +msgstr "நிர்வாகிகள்" + +#: templates/zerver/emails/notify_new_login.html:12 +#: templates/zerver/emails/notify_new_login.txt:1 +msgid "We noticed a recent login for the following Zulip account." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:16 +#, fuzzy, python-format +#| msgid "Administrators" +msgid "Organization: %(organization_link)s" +msgstr "நிர்வாகிகள்" + +#: templates/zerver/emails/notify_new_login.html:19 +#: templates/zerver/emails/notify_new_login.txt:5 +#, python-format +msgid "Email: %(user_email)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:22 +#: templates/zerver/emails/notify_new_login.txt:7 +#, python-format +msgid "Time: %(login_time)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:25 +#: templates/zerver/emails/notify_new_login.txt:9 +#, python-format +msgid "Device: %(device_browser)s on %(device_os)s." +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:28 +#: templates/zerver/emails/notify_new_login.txt:11 +#, python-format +msgid "IP address: %(device_ip)s" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:33 +#: templates/zerver/emails/notify_new_login.txt:14 +msgid "If this was you, great! There's nothing else you need to do." +msgstr "" + #: templates/zerver/emails/notify_new_login.html:36 #, python-format msgid "" @@ -2411,6 +1935,22 @@ msgid "" "contact us immediately at %(support_email)s." msgstr "" +#: templates/zerver/emails/notify_new_login.html:40 +#: templates/zerver/emails/notify_new_login.txt:20 +msgid "Thanks," +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:41 +#: templates/zerver/emails/notify_new_login.txt:21 +msgid "Zulip Security" +msgstr "" + +#: templates/zerver/emails/notify_new_login.html:46 +#, fuzzy +#| msgid "Enable notifications" +msgid "Unsubscribe from login notifications" +msgstr "அறிவிப்புகளை இயக்கு" + #: templates/zerver/emails/notify_new_login.subject.txt:1 #, python-format msgid "New login from %(device_browser)s on %(device_os)s" @@ -2474,6 +2014,15 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, fuzzy, python-format +#| msgid "Enable notifications" +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "அறிவிப்புகளை இயக்கு" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -2504,6 +2053,96 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each " +"message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat " +"about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages, rename topics, or even move a topic to a different " +"stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:9 +#: templates/zerver/emails/password_reset.txt:1 +#, python-format +msgid "" +"Somebody (possibly you) requested a new password for the Zulip account " +"%(email)s on %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/password_reset.html:13 +msgid "Click the button below to reset your password." +msgstr "" + +#: templates/zerver/emails/password_reset.html:14 +#, fuzzy +#| msgid "Password" +msgid "Reset password" +msgstr "கடவுச்சொல்" + #: templates/zerver/emails/password_reset.html:19 #, python-format msgid "" @@ -2512,6 +2151,29 @@ msgid "" "href=\"%(help_link)s\">reactivate your account." msgstr "" +#: templates/zerver/emails/password_reset.html:21 +#: templates/zerver/emails/password_reset.txt:11 +msgid "You do not have an account in that Zulip organization." +msgstr "" + +#: templates/zerver/emails/password_reset.html:26 +#: templates/zerver/emails/password_reset.txt:16 +msgid "You do have active accounts in the following organization(s)." +msgstr "" + +#: templates/zerver/emails/password_reset.html:32 +#: templates/zerver/emails/password_reset.txt:21 +msgid "" +"You can try logging in or resetting your password in the organization(s) " +"above." +msgstr "" + +#: templates/zerver/emails/password_reset.html:38 +#: templates/zerver/emails/password_reset.txt:25 +msgid "" +"If you do not recognize this activity, you can safely ignore this email." +msgstr "" + #: templates/zerver/emails/password_reset.subject.txt:1 #, python-format msgid "Password reset request for %(realm_name)s" @@ -2528,6 +2190,64 @@ msgid "" "You can contact an organization administrator to reactivate your account." msgstr "" +#: templates/zerver/emails/realm_auto_downgraded.html:8 +#, python-format +msgid "" +"\n" +" Your organization, %(organization_name_with_link)s, has been downgraded " +"to the Zulip Cloud\n" +" Free plan because of unpaid invoices. The unpaid invoices have been " +"voided.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:15 +#, python-format +msgid "" +"\n" +" To continue on the Zulip Cloud Standard plan, please upgrade again by " +"going to %(upgrade_url)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_auto_downgraded.html:22 +#, python-format +msgid "" +"\n" +" If you think this was a mistake or need more details, please reach out " +"to us at %(support_email)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:8 +#: templates/zerver/emails/realm_reactivation.txt:1 +#, python-format +msgid "Dear former administrators of %(realm_name)s," +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:10 +#: templates/zerver/emails/realm_reactivation.txt:4 +#, python-format +msgid "" +"One of your administrators requested reactivation of the previously " +"deactivated Zulip organization hosted at %(realm_uri)s." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:13 +msgid "Click the button below to reactivate your organization." +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:14 +msgid "Reactivate organization" +msgstr "" + +#: templates/zerver/emails/realm_reactivation.html:17 +#: templates/zerver/emails/realm_reactivation.txt:10 +msgid "" +"If the request was in error, you can take no action and this link will " +"expire in 24 hours." +msgstr "" + #: templates/zerver/emails/realm_reactivation.subject.txt:1 msgid "Reactivate your Zulip organization" msgstr "" @@ -2811,7 +2531,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -3334,16 +3054,16 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:93 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:106 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:251 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" @@ -3352,7 +3072,7 @@ msgstr "" msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:396 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format @@ -3411,27 +3131,27 @@ msgstr "" msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one " "day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" @@ -3475,72 +3195,66 @@ msgstr "" msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:985 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:989 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:993 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1048 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1053 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1057 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1186 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1204 zerver/actions/message_edit.py:1207 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1218 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1233 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1267 zerver/actions/message_send.py:1558 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1286 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1303 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" @@ -3561,78 +3275,86 @@ msgstr "" msgid "Invalid message flag operation: '{operation}'" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/actions/message_flags.py:335 zerver/lib/message.py:786 -#: zerver/lib/message.py:792 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:161 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:1127 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1138 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1154 zerver/actions/message_send.py:1164 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1172 zerver/actions/message_send.py:1180 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1325 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1336 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but " "that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1348 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The " "stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1395 +#: zerver/actions/message_send.py:1385 #, fuzzy #| msgid "Administrators" msgid "Direct messages are disabled in this organization." msgstr "நிர்வாகிகள்" -#: zerver/actions/message_send.py:1472 +#: zerver/actions/message_send.py:1462 #, fuzzy #| msgid "Administrators" msgid "Topics are required in this organization" msgstr "நிர்வாகிகள்" -#: zerver/actions/message_send.py:1528 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1534 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/realm_emoji.py:40 zerver/views/realm_emoji.py:38 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 #, fuzzy #| msgid "Enable notifications" @@ -3667,32 +3389,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:73 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:165 +#: zerver/actions/streams.py:166 msgid "Stream is not currently deactivated" msgstr "" -#: zerver/actions/streams.py:168 +#: zerver/actions/streams.py:169 #, python-brace-format msgid "Stream named {stream_name} already exists" msgstr "" -#: zerver/actions/streams.py:230 +#: zerver/actions/streams.py:237 #, python-brace-format msgid "Stream {stream_name} un-archived." msgstr "" -#: zerver/actions/streams.py:932 +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1118 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for " @@ -3702,38 +3424,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1246 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1265 zerver/actions/streams.py:1267 -#: zerver/views/streams.py:802 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1272 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1276 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1344 zerver/actions/streams.py:1349 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1350 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1356 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-" @@ -3754,7 +3476,7 @@ msgstr "" msgid "Invalid user ID {user_id}" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/actions/user_groups.py:213 zerver/actions/user_groups.py:245 +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 #, python-brace-format msgid "User group '{group_name}' already exists." msgstr "" @@ -3775,12 +3497,13 @@ msgstr "" msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:667 zerver/lib/streams.py:703 zerver/lib/streams.py:729 -#: zerver/lib/streams.py:731 zerver/lib/streams.py:748 -#: zerver/lib/user_groups.py:45 zerver/lib/user_groups.py:52 -#: zerver/lib/users.py:255 zerver/lib/users.py:284 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:338 -#: zerver/views/streams.py:639 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 zerver/views/invite.py:207 +#: zerver/views/realm_emoji.py:33 zerver/views/streams.py:321 +#: zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" @@ -3811,92 +3534,96 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 #, fuzzy #| msgid "Password" msgid "New password" msgstr "கடவுச்சொல்" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 #, python-brace-format msgid "" "You're making too many attempts to sign in. Try again in {seconds} seconds " "or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" @@ -3968,31 +3695,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:140 zerver/lib/email_notifications.py:162 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:591 +#: zerver/lib/email_notifications.py:574 #, fuzzy #| msgid "Enable notifications" msgid "Zulip notifications" @@ -4074,135 +3801,134 @@ msgstr "" msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1543 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:139 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:164 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:176 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 #, fuzzy #| msgid "Administrators" msgid "organization owner" msgstr "நிர்வாகிகள்" -#: zerver/lib/exceptions.py:185 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:189 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:201 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:213 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:236 zerver/lib/request.py:441 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:247 +#: zerver/lib/exceptions.py:248 #, fuzzy #| msgid "Administrators" msgid "Must be an organization member" msgstr "நிர்வாகிகள்" -#: zerver/lib/exceptions.py:258 zerver/views/invite.py:70 -#: zerver/views/invite.py:134 zerver/views/invite.py:180 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:269 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:282 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:290 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:298 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:307 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:316 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:324 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:340 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:346 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:385 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " "webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:404 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:427 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:467 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:506 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the {total_messages_allowed_to_move}/" "{total_messages_in_topic} most recent messages in this topic." msgstr "" -#: zerver/lib/exceptions.py:518 +#: zerver/lib/exceptions.py:519 msgid "Reaction already exists." msgstr "" -#: zerver/lib/exceptions.py:529 +#: zerver/lib/exceptions.py:530 msgid "Reaction doesn't exist." msgstr "" @@ -4251,7 +3977,7 @@ msgid "Settings" msgstr "அமைப்புகள்" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -4264,92 +3990,92 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:220 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:222 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/message.py:1668 +#: zerver/lib/message.py:1681 #, python-brace-format msgid "" "You are not allowed to mention user group '{user_group_name}'. You must be a " "member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:108 +#: zerver/lib/narrow.py:109 #, python-brace-format msgid "Operator {operator} not supported." msgstr "" -#: zerver/lib/narrow.py:207 +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1054 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1074 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" @@ -4545,70 +4271,57 @@ msgstr "" msgid "Invalid response format" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/push_notifications.py:341 +#: zerver/lib/push_notifications.py:388 #, fuzzy #| msgid "Enable notifications" msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/push_notifications.py:351 +#: zerver/lib/push_notifications.py:398 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid GCM options to bouncer: {options}" msgstr "அறிவிப்புகளை இயக்கு" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:208 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:758 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:847 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:851 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:853 -msgid "TODO - 2" -msgstr "" - -#: zerver/lib/push_notifications.py:855 -msgid "TODO" -msgstr "" - -#: zerver/lib/push_notifications.py:857 -#, python-brace-format -msgid "{full_name} mentioned all topic participants:" -msgstr "" - -#: zerver/lib/push_notifications.py:861 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:846 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:95 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" @@ -4632,8 +4345,8 @@ msgstr "" msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:394 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" @@ -4646,106 +4359,194 @@ msgstr "" msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:302 +#: zerver/lib/streams.py:309 #, python-brace-format msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:308 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:311 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:317 zerver/lib/streams.py:336 -#: zerver/lib/streams.py:419 zerver/lib/streams.py:487 -#: zerver/views/streams.py:401 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 #, fuzzy #| msgid "Enable notifications" msgid "Invalid stream ID" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/streams.py:462 +#: zerver/lib/streams.py:469 #, python-brace-format msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:471 zerver/lib/streams.py:591 +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid stream name '{stream_name}'" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/streams.py:735 +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" + +#: zerver/lib/streams.py:747 #, python-brace-format msgid "Stream(s) ({stream_names}) do not exist" msgstr "" -#: zerver/lib/streams.py:744 zerver/views/streams.py:336 +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:774 +#: zerver/lib/streams.py:786 #, python-brace-format msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 +#: zerver/lib/string_validation.py:45 #, python-brace-format msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:50 +#: zerver/lib/string_validation.py:53 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid character in stream name, at position {position}!" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/string_validation.py:58 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:63 +#: zerver/lib/string_validation.py:66 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid character in topic, at position {position}!" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, fuzzy, python-brace-format +#| msgid "Enable notifications" +msgid "Invalid {var_name}" +msgstr "அறிவிப்புகளை இயக்கு" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" @@ -4768,523 +4569,476 @@ msgstr "" msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:54 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:67 +#: zerver/lib/user_groups.py:150 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid user group ID: {group_id}" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/user_groups.py:87 +#: zerver/lib/user_groups.py:182 #, python-brace-format msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:92 +#: zerver/lib/user_groups.py:187 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:99 +#: zerver/lib/user_groups.py:194 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:106 +#: zerver/lib/user_groups.py:201 #, python-brace-format msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/user_groups.py:117 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 #, python-brace-format msgid "User group name cannot exceed {max_length} characters." msgstr "" -#: zerver/lib/user_groups.py:125 +#: zerver/lib/user_groups.py:230 #, python-brace-format msgid "User group name cannot start with '{prefix}'." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:96 +#: zerver/lib/users.py:92 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid integration '{integration_name}'." msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/users.py:102 +#: zerver/lib/users.py:98 #, python-brace-format msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:112 +#: zerver/lib/users.py:108 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid {key} value {value} ({error})" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/users.py:130 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:164 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:169 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:238 zerver/lib/users.py:243 zerver/models.py:4729 +#: zerver/lib/users.py:204 zerver/models.py:4792 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid user ID: {user_id}" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/lib/users.py:251 zerver/lib/users.py:253 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:277 zerver/lib/users.py:304 zerver/lib/users.py:320 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:279 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, fuzzy, python-brace-format -#| msgid "Enable notifications" -msgid "Invalid {var_name}" -msgstr "அறிவிப்புகளை இயக்கு" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 +#: zerver/lib/validator.py:319 #, python-brace-format msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:232 +#: zerver/lib/webhooks/common.py:235 #, python-brace-format msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 +#: zerver/lib/zcommand.py:73 #, python-brace-format msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:441 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/middleware.py:607 +#: zerver/middleware.py:610 #, python-brace-format msgid "Reverse proxy misconfiguration: {proxy_reason}" msgstr "" -#: zerver/models.py:495 +#: zerver/models.py:488 #, fuzzy #| msgid "Username" msgid "stream events" msgstr "பயனர்பெயர்" -#: zerver/models.py:626 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:684 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:693 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:697 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:701 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:705 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1123 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1235 zerver/models.py:1238 +#: zerver/models.py:1247 zerver/models.py:1250 #, python-brace-format msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1240 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1248 +#: zerver/models.py:1260 #, fuzzy #| msgid "Enable notifications" msgid "Invalid URL template." msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/models.py:1292 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1304 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1382 zerver/views/realm_playgrounds.py:24 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1412 +#: zerver/models.py:1403 msgid "Missing the required variable \"code\" in the URL template" msgstr "" -#: zerver/models.py:1417 +#: zerver/models.py:1408 msgid "\"code\" should be the only variable present in the URL template" msgstr "" -#: zerver/models.py:1660 +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1661 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1662 +#: zerver/models.py:1669 #, fuzzy #| msgid "Administrators" msgid "Admins and moderators" msgstr "நிர்வாகிகள்" -#: zerver/models.py:1663 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1664 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1973 +#: zerver/models.py:1981 #, fuzzy #| msgid "Administrators" msgid "Organization owner" msgstr "நிர்வாகிகள்" -#: zerver/models.py:1974 +#: zerver/models.py:1982 #, fuzzy #| msgid "Administrators" msgid "Organization administrator" msgstr "நிர்வாகிகள்" -#: zerver/models.py:1975 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1976 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1977 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2557 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2563 +#: zerver/models.py:2583 #, fuzzy #| msgid "All streams" msgid "Public" msgstr "அனைத்து தகவலரங்கங்கள்" -#: zerver/models.py:2569 +#: zerver/models.py:2589 #, fuzzy #| msgid "Private messages" msgid "Private, shared history" msgstr "தனிப்பட்ட செய்தி" -#: zerver/models.py:2575 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2583 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2603 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2604 +#: zerver/models.py:2624 #, fuzzy #| msgid "Administrators" msgid "Only organization administrators can post" msgstr "நிர்வாகிகள்" -#: zerver/models.py:2606 +#: zerver/models.py:2626 #, fuzzy #| msgid "Administrators" msgid "Only organization administrators and moderators can post" msgstr "நிர்வாகிகள்" -#: zerver/models.py:2609 +#: zerver/models.py:2629 #, fuzzy #| msgid "Administrators" msgid "Only organization full members can post" msgstr "நிர்வாகிகள்" -#: zerver/models.py:3222 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3223 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3224 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4733 +#: zerver/models.py:4796 #, python-brace-format msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4737 +#: zerver/models.py:4800 #, python-brace-format msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4777 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4780 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4792 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4793 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4794 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4795 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4798 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4803 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" @@ -5379,57 +5133,85 @@ msgstr "" msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:108 zerver/views/events_register.py:112 +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 #, python-brace-format msgid "Invalid '{key}' parameter for anonymous request" msgstr "" +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" +msgstr "" + #: zerver/views/hotspots.py:19 #, python-brace-format msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 +#: zerver/views/invite.py:87 #, python-brace-format msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:89 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:126 zerver/views/invite.py:129 -#: zerver/views/invite.py:148 zerver/views/invite.py:151 -#: zerver/views/invite.py:170 zerver/views/invite.py:175 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:156 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:210 +#: zerver/views/invite.py:224 #, python-brace-format msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" @@ -5447,19 +5229,19 @@ msgstr "" msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -5477,25 +5259,25 @@ msgstr "" msgid "User is not muted" msgstr "தலைப்பு" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:108 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:146 +#: zerver/views/presence.py:152 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid status: {status}" @@ -5521,28 +5303,28 @@ msgstr "" msgid "Read receipts are disabled in this organization." msgstr "நிர்வாகிகள்" -#: zerver/views/realm.py:160 +#: zerver/views/realm.py:183 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid language '{language}'" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:170 +#: zerver/views/realm.py:193 #, python-brace-format msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:178 +#: zerver/views/realm.py:201 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid giphy_rating {giphy_rating}" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/realm.py:335 +#: zerver/views/realm.py:415 #, fuzzy #| msgid "Administrators" msgid "Must be a demo organization." @@ -5576,33 +5358,33 @@ msgstr "நிர்வாகிகள்" #: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 #: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 -#: zerver/views/user_settings.py:371 +#: zerver/views/user_settings.py:391 #, python-brace-format msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -5610,7 +5392,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -5632,94 +5414,85 @@ msgstr "" msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 #, fuzzy #| msgid "Enable notifications" msgid "Invalid request format" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 #, fuzzy #| msgid "Enable notifications" msgid "Invalid DSN" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:324 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:372 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:454 zerver/views/user_groups.py:168 -#: zerver/views/user_groups.py:347 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:538 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:544 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:655 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:668 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:776 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:778 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:779 +#: zerver/views/streams.py:776 #, fuzzy #| msgid "All streams" msgid "new streams" msgstr "அனைத்து தகவலரங்கங்கள்" -#: zerver/views/streams.py:811 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1060 +#: zerver/views/streams.py:1071 #, python-brace-format msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1066 +#: zerver/views/streams.py:1077 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Not subscribed to stream id {stream_id}" @@ -5766,88 +5539,88 @@ msgstr "" msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:111 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:209 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:214 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:245 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:273 +#: zerver/views/user_groups.py:284 #, python-brace-format msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:299 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:308 +#: zerver/views/user_groups.py:324 #, python-brace-format msgid "" "User group {user_group_id} is already a subgroup of one of the passed " "subgroups." msgstr "" -#: zerver/views/user_groups.py:328 +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:312 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:134 +#: zerver/views/user_settings.py:150 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid notification sound '{notification_sound}'" msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/user_settings.py:145 +#: zerver/views/user_settings.py:161 #, python-brace-format msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:267 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:277 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:282 +#: zerver/views/user_settings.py:302 #, python-brace-format msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:288 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:361 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5930,29 +5703,29 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 #, fuzzy #| msgid "Enable notifications" msgid "Invalid signature." msgstr "அறிவிப்புகளை இயக்கு" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5976,24 +5749,24 @@ msgstr "" msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:151 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -6012,7 +5785,7 @@ msgid "" "closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -6020,20 +5793,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 +#: zerver/webhooks/wordpress/view.py:57 #, python-brace-format msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1114 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -6070,21 +5843,21 @@ msgstr "" msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:373 +#: zilencer/views.py:392 #, fuzzy, python-brace-format #| msgid "Enable notifications" msgid "Invalid property {property}" msgstr "அறிவிப்புகளை இயக்கு" -#: zilencer/views.py:375 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:398 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zilencer/views.py:497 +#: zilencer/views.py:515 msgid "Malformed audit log data" msgstr "" @@ -6096,14 +5869,19 @@ msgstr "" msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2902 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2905 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" +#, fuzzy +#~| msgid "Enable notifications" +#~ msgid "Unsubscribe from welcome emails" +#~ msgstr "அறிவிப்புகளை இயக்கு" + #~ msgid "Private messages" #~ msgstr "தனிப்பட்ட செய்தி" diff --git a/locale/ta/translations.json b/locale/ta/translations.json index c28eabe0dc..09703cb927 100644 --- a/locale/ta/translations.json +++ b/locale/ta/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(தலைப்பு இல்லை)", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "", "All direct messages": "", + "All groups": "", "All messages": "", "All messages including muted streams": "", "All streams": "அனைத்து தகவலரங்கங்கள்", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "மூடு", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "முடி", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "நகலெடுக்கப்பட்டது", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "அழி", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "தோல்வி", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "பொது", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "படம்", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "ஒத்துவராதது இணையத்தள முகவரி", @@ -581,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "விடுபதிகை", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "குறிப்பிடுகள்", - "Menu": "", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "தொடரை அமைதியாக்கு", "Mute this user": "", "Mute topic": "தலைப்பை அமைதியாக்கு", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "", + "New stream notifications": "", "New task": "", "New topic": "", "New user announcements": "", + "New user notifications": "", "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "விளக்கம் இல்லை", + "No drafts selected": "", "No drafts.": "வரைவுகள் இல்லை", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "பழைய கடவுச்சொல்", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "திற", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "இடுக்குறி", "Star selected message": "", @@ -1024,8 +1080,10 @@ "Subscribe": "சேர்", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "சேர்ந்துள்ளார்", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "பதிவாளர்கள்", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "நேரம் மண்டலம்", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "இன்று", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "தலைப்பு", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "தலைப்பு தடையை நீக்கு", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "[முடக்கு]", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "மேலும் உரையாடலைகள்", "more topics": "மேலும் தலைப்புகள்", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/tl/LC_MESSAGES/django.po b/locale/tl/LC_MESSAGES/django.po index 594fcc55ca..8fb4e96046 100644 --- a/locale/tl/LC_MESSAGES/django.po +++ b/locale/tl/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Gabriel Ferrer, 2022\n" "Language-Team: Tagalog (http://app.transifex.com/zulip/zulip/language/tl/)\n" @@ -18,46 +18,47 @@ msgstr "" "Language: tl\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Hindi pinapayagan ang mga panauhing tagagamit" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Walang bisa na kapisanan" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Mga Pampublikong Kapangkatan ng mga Paksa" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Mga Pribadong Kapangkatan ng mga Paksa" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -118,29 +119,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Maningil ka sa {} tagagamit man lamang. " - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "May nangyaring masama. Ipaalam {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "May nangyaring masama. Maaaring buksan muli ang pahina." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "May nangyaring masama. Maaaring maghintay ng ilang segundo at subukan muli." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -172,7 +175,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -188,14 +191,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Walang dapat baguhin" @@ -207,7 +210,7 @@ msgstr "Walang mamimili para sa kapisanan!" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -257,7 +260,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -559,9 +562,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -579,9 +582,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -591,9 +594,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -856,51 +859,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Salamat sa pagsali!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -1148,6 +1151,159 @@ msgstr "Pangkaraniwan na tagagamit" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1155,6 +1311,39 @@ msgstr "" msgid "Hi," msgstr "Pagbati," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1168,22 +1357,9 @@ msgstr "" msgid "Confirm email change" msgstr "" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1238,17 +1414,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1353,225 +1518,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Halimbawa ng mga maiikling paksa" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1656,14 +1602,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1695,21 +1641,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1717,21 +1687,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1774,29 +1744,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1959,6 +1929,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1987,6 +1965,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Halimbawa ng mga maiikling paksa" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2375,7 +2425,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2875,290 +2925,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Hindi maaaring anyayahin sinuman." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Wala nang dapat baguhin" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Hindi mabago ang nilalaman ng mensahe habang binabago Ang Kapangkatan ng mga Paksa" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Ikaw ay walang sapat na pahintulot upang baguhin ang mensaheng ito" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Walang kang pahintulot na gumamit ng wildcard mentions sa Kapangkatan ng mga Paksa na ito." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Walang kang pahintulot na ilipat and mensaheng ito dahil sa " - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "(Mga) Imbalidong Mensahe" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Hindi maipakita ang mensahe" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Inaaasahan ang eksaktong isang kapangkatan ng mga paksa" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Imbalidong tipo ng dato para sa Kapangkatan ng mga Paksa" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3174,8 +3227,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3194,18 +3247,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3214,38 +3281,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Ang mga mensahe sa Kapangkatan ng mga Paksa na ito ay mananatili sa habang panahon." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3255,56 +3322,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Walang sapat na pahintulot" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3319,95 +3389,101 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Bagong kontrasenya" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Imbalidong sulatroniko '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3471,31 +3547,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Ang paksa ay dapat hindi maglaman ng walang bytes." -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Ang borador ay hindi mahanap" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Mga Abiso sa Zulip" @@ -3528,166 +3604,166 @@ msgstr "Mayroon nang kwenta" msgid "Account has been deactivated." msgstr "Ang kwenta ay pinawalang bisa." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "tagagamit" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Maling anyo ng JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Dapat ay miyembro ng samahan" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Dapat ay tagapamahala ng samahan" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Dapat ay may-ari ng samahan" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Ang iyong pasokngalan o kontrasenya ay mali" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Ang kwenta ay napawalang bisa" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Ang samahan ay napawalang bisa" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Ang pagpapatunay sa kontrasenya ay pinawalang bisa sa samahan na ito" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Ang iyong kontrasenya ay napawalang bisa at dapat nang baguhin" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Imablidong susing API" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Maling anyo na susing API" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Imbalidong mababang larangan" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Pinagbawalang pumasok" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3695,6 +3771,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3736,7 +3820,7 @@ msgid "Settings" msgstr "Mga Itinakda" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3749,264 +3833,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Ugnayang mamimili" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Libangan" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Kalatas" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Pinánsiyál" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Kawani para sa Bentahan" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "At iba pa" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Pangangasiwa sa proyekto" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Pamamahala ng bersyon" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Pagbati at maligayang pagtanggap sa Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4021,669 +4113,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Ang pangalan ay napakahaba!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Pangit na pangalan o pasokngalan" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Mga Tagapamahala at Mga Pangulo ng Talakayan" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Tanging Mga Tagapamahala lamang" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Walang sinuman" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Pangulo ng Talakayan" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Miyembro" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4751,66 +4932,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4818,22 +5032,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Nawawalang tagapagpadala" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4849,26 +5064,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4885,36 +5101,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4927,42 +5143,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4970,7 +5187,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4978,107 +5195,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5094,97 +5304,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5231,6 +5452,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5241,7 +5466,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5260,27 +5486,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5300,28 +5526,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Dapat may nilalaman ang paksa" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Ang nilalalaman ay dapat may laman" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Maling anyo ang binigay na JSON" @@ -5340,7 +5566,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5348,19 +5574,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5377,47 +5604,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/tl/translations.json b/locale/tl/translations.json index 8d2a5a52dc..0ef1abd05c 100644 --- a/locale/tl/translations.json +++ b/locale/tl/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(nakatago)", "(no description)": "(walang paglalarawan)", "(no topic)": "(walang paksa)", + "(or )": "", "(you)": "(ikaw)", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "Sumubaybay", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Idagdag ang salitang pang-alerto", "Add all users": "Idagdag lahat ng mga tagagamit", "Add another user...": "", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Idagdag ang alituntunin", "Add video call": "Idagdag ang tawag na pang-bidyo", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Tagumpay na idagdag!", "Added successfully.": "", "Administrator": "Tagapamahala", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Lahat", "All direct messages": "", + "All groups": "", "All messages": "Lahat ng mga mensahe", "All messages including muted streams": "", "All streams": "", @@ -136,9 +142,11 @@ "Allow subdomains": "Payagan ang mababang larangan", "Allowed domains": "Pinayagan na mga larangan", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "Hindi na sumusubaybay.", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "Palagi", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Ikaw ba ay panatag na magpadala ng paanyaya sa ?", "Are you sure you want to revoke the invitation to {email}?": "Ikaw ba ay panatag na tanggalin ang paanyaya sa {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Ikaw ba ay panatag na tanggalin ang kawing na paanyayang ginawa ni {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Paniningil", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "", "Compose your message here...": "", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Mga Tao", "Idle": "", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "", "Insert new line": "", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "Huling 30 araw", "Last 6 months": "Huling 6 na buwan", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "Huling mensahe", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Pamahalaan ang Kapangkatan ng mga Paksa", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "Mga Mungkahi", - "Menu": "Pagpipilian", "Menus": "Mga Pagpipilian", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Ilipat ang paksa", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "", "Mute this user": "", "Mute topic": "", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "", + "New stream notifications": "", "New task": "", "New topic": "", "New user announcements": "", + "New user notifications": "", "Next message": "", "Next unread direct message": "", "Next unread topic": "", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "Walang borador", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "Hindi, hahabol ako.", "Nobody": "Walang sinuman", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Bukas", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "Sumali", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "", @@ -1024,8 +1080,10 @@ "Subscribe": "", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "", + "Subscribe {full_name} to streams": "", "Subscribed": "", "Subscribed streams": "", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Sino ang maaaring maglathala sa Kapangkatan ng mga paksa?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Ikaw at", "You and {display_reply_to}": "Ikaw at {display_reply_to}", "You and {recipients}": "Ikaw at {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Walang kang pahintulot na gumamit ng wildcard mentions sa Kapangkatan ng mga Paksa na ito.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/tr/LC_MESSAGES/django.po b/locale/tr/LC_MESSAGES/django.po index ed38e827d4..57cc5be9a6 100644 --- a/locale/tr/LC_MESSAGES/django.po +++ b/locale/tr/LC_MESSAGES/django.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Eren Dogan, 2023\n" "Language-Team: Turkish (http://app.transifex.com/zulip/zulip/language/tr/)\n" @@ -27,46 +27,47 @@ msgstr "" "Language: tr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Misafir kullanıcılara izin verilmemektedir" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Geçersiz organizasyon" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Açık kanallar" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Özel kanallar" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "Direkt mesajlar" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "Grup direkt mesaları" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Bilinmeyen grafik ismi: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Başlangıç zamanı bitiş zamanında sonra. Başlangıç: {start}, Bitiş: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Çözümleme verisi bulunmamaktadır. Lütfen sunucu yöneticinizle temasa geçiniz." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Geçersiz tür parametresi" @@ -127,29 +128,31 @@ msgid "" msgstr "Organizasyonunun {num_invites} kişi davet etmesi için gereken yeterli sayıda Zulip lisansı yoktur." #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "En az {} kullanıcıya fatura etmelisiniz." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "{} daha fazla lisansa sahip faturalar bu sayfadan işlenemez. Bu yükseltmeyi tamamlamak için lütfen {} ile iletişime geçiniz." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Bazı şeyler yanlış gitti. Lütfen {email} ile iletişime geçiniz" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Birşeyler yanlış gitti. Lütfen sayfayı yeniden yükleyiniz." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Birşeyler yanlış gitti. Lütfen birkaç saniye sonra bekleyin ve yeniden deneyiniz." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -181,7 +184,7 @@ msgstr "Plan yükseltilemedi. Plan tarihi geçmiş ve yeni bir plan ile değişm msgid "Unable to update the plan. The plan has ended." msgstr "Plan yükseltilemedi. Plan bitmiştir." -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -197,14 +200,14 @@ msgstr "Mevcut fatura döneminde planınız zaten {licenses} lisanslarında bulu msgid "You cannot decrease the licenses in the current billing period." msgstr "Mevcut fatura döneminde lisansları azaltamazsınız." -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "Planınızın {licenses_at_next_renewal} lisanslarıyla yenilenmesi zaten planlandı." -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "Değişecek bir şey yok." @@ -216,7 +219,7 @@ msgstr "Bu organizasyon için müşteri yok!" msgid "Session not found" msgstr "Oturum bulunamadı" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Ödeme yöneticisi veya organizasyon sahibi olmak zorunda" @@ -266,7 +269,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Dahili sunucu hatası" @@ -568,9 +571,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -588,9 +591,9 @@ msgstr "Fiyatlandırmayı görüntüle" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Zulip'i kendi sunucunda kullan" @@ -600,9 +603,9 @@ msgstr "Zulip'i kendi sunucunda kullan" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Sponsorluk iste" @@ -865,51 +868,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "%(identity_provider)s ile kayıt oluştur" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Kayıt olduğunuz için teşekkürler!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Hala e-posta almadınız mı? Yeniden gönderebiliriz." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Her ihtimale karşı, istenmeyen e-posta klasörüne bakın." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "Zulip'e bağlanılanamadı." -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Güncellemeler gecikebilir." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "Yakından tekrar denenecek..." -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Şimdi dene." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "İletiler" @@ -1157,6 +1160,159 @@ msgstr "Normal kullanıcılar" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Zulip'e hoşgeldiniz!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Organizasyon URL'si: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "LDAP hesabınızla giriş yapın" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "Zulip'te bulunan %(realm_name)s: Yeni organizasyon detaylar" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "Zulip'te bulunan %(realm_name)s: Yeni hesap detayların" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "%(realm_name)s Zulip organizasyonuna katıldınız." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1164,6 +1320,39 @@ msgstr "" msgid "Hi," msgstr "Merhaba," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "Eğer bu isteği siz yapmadıysanız lütfen bizimle %(support_email)s aracılığı ile iletişime geçiniz." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Eğer bu isteği siz gerçekleştirmediyseniz, lütfen bizimle iletişime geçiniz \n<%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1177,23 +1366,10 @@ msgstr "%(realm_uri)süzerinde bulunan Zulip hesabınızın e-posta adresini %(o msgid "Confirm email change" msgstr "E-posta değişikliğini onayla" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "Eğer bu isteği siz yapmadıysanız lütfen bizimle %(support_email)s aracılığı ile iletişime geçiniz." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Yeni e-posta adresini teyit et" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Eğer bu isteği siz gerçekleştirmediyseniz, lütfen bizimle iletişime geçiniz \n<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1247,17 +1423,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1362,225 +1527,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "E-posta adresiniz %(email)siçin %(external_host)s tarafından barındırılan aşağıdaki Zulip organizasyonlarında hesap mevcut:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Zulip'e hoşgeldiniz!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Organizasyon URL'si: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "LDAP hesabınızla giriş yapın" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "Zulip'te bulunan %(realm_name)s: Yeni organizasyon detaylar" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "Zulip'te bulunan %(realm_name)s: Yeni hesap detayların" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "%(realm_name)s Zulip organizasyonuna katıldınız." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Kısa konulardan örnekler" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Zulip'e git" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1665,14 +1611,14 @@ msgstr "Bu davetiye iki gün içersinde sona eriyor. Eğer davetiye sona ererse, #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1704,21 +1650,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1726,21 +1696,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1783,29 +1753,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nBu e-posta ileti içeriğini içermez çünkü e-posta bildirimlerinde ileti içeriği özelliğini devre dışı bıraktınız.\nDaha fazla detay için %(alert_notif_url)s.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nBu e-postaya cevap vermeyin. Bu Zulip sunucusu gelen e-postaları almak için\nayarlanmadı. Yardım:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "E-posta tercihlerini yönet:" @@ -1968,6 +1938,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1996,6 +1974,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Kısa konulardan örnekler" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Zulip'e git" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2384,7 +2434,7 @@ msgid "Incoming webhooks" msgstr "Gelen webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "İnteraktif botlar" @@ -2884,292 +2934,295 @@ msgid "" " " msgstr "\nZulip masaüstü uygulamasını da kullanabilirsiniz." -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "kaydolmalar" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} Zulip'e giriş yaptı. (toplam: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} Zulip'e katılma davetinizi kabul etti!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Geçersiz sıralama" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Field id {id} bulunamadı." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Geçersiz varsayılan kanal group ismi '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Varsayılan kanal gurup ismi çok uzun (limit: {} karakter)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Varsayılan '{}' kanal gurup ismi NULL (0x00) karakterler içeriyor." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Geçersiz varsayılan kanal gurubu {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' varsayılan kanaldır ve buraya '{group_name}' eklenemez" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Varsayılan '{group_name}' kanal grubu mevcut" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "'{stream_name}' kanal varsayılan '{group_name}' kanal gurubunda var" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "'{stream_name}' kanalı varsayılan '{group_name}' kanal grubunda yok." -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Bu varsayılan kanal gurup zaten isimlendirildi '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Varsayılan '{}' kanal gurubu mevcut" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Hesabınız bu organizasyon adına davetiye göndermek için çok yenidir. Bir organizasyon yöneticisi veya daha uzun süreli bir başka kullanıcıdan yardım alınız." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "E-postaların bazıları doğrulanamadığından bu kisilere davetiye gönderilemedi. Geri kalan herkesin davetiyesi gönderildi!" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Kimseyi davet edemedik." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Bu adreslerden bazıları zaten Zülip'i kullanıyor, bu yüzden onlara bir davet göndermedik. Diğer herkese davetiye gönderildi!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Değiştirilecek bir şey yok" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Konu düzenlemesi olmayan geçersiz propagate_mode" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Kanal değiştirirken ileti içeriği değiştirilemez" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Araçlar düzenlenemez." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} bu konuyu çözüldü olarak işaretledi." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} bu konuyu çözülmemiş olarak işaretledi." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Organizasyonunuz ileti değiştirmeye izin vermiyor" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Bu iletiyi düzenleme izniniz yok" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "İleti düzenleme için belirlenen zaman limiti geçmiştir." -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Bu kanalda wildcard bahsetmeyi kullanmaya izniniz bulunmamakta." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Bu iletiyi taşımak için yetkiniz yok" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Bu ileti ilgili kanal erişiminiz olmadığından taşıyamazsınız" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Geçersiz etiket: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Etiket düzenlenemez: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Geçersiz ileti etiketi eylemi: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Geçersiz ileti(ler)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "İleti gönderime hazırlanamadı" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Sadece bir kanal bekleniyor" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Kanal için geçersiz veri tipi" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Alıcılar için geçersiz veri tipi" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Alıcılar listesi e-posta veya kullanıcı ID içerebilir ama ikisi birden olamaz." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "{bot_identity} adlı botunuz stream ID {stream_id} nolu kanala ileti göndermeye çalıştı, fakat bu numara ile bir kanal bulunmamakta." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "{bot_identity} adlı botunuz {stream_name} adlı kanala ileti göndermeye çalıştı, fakat böyle bir kanal bulunmamakta. Oluşturmak için [buraya]({new_stream_link}) tıklayınız." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Your bot {bot_identity} adlı botunuz {stream_name} adlı kanala ileti göndermeye çalıştı. Bu kanal mevcut fakat hiç abonesi bulunmamakta." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Eklentiler: API programıcısı yanlış JSON içeriği gönderdi" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgetlar: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Tepki halihazırda mevcut." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Bu isimle bir özel emoji hali hazırda mevcut." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3183,8 +3236,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3203,18 +3256,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3223,38 +3290,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} {old_stream_name} kanalının adını {new_stream_name} olarak değiştirdi." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Tanım yok." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Eski açıklama" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3264,56 +3331,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "Bu iletiye bir alt ileti ekleyemezsiniz." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Geçersiz kullanıcı kimliği {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "'{}' kullanıcı grubu mevcut." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Bu API gelen webhook botlarına müsait değildir." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Hesap bu alt alanla ilişkilendirilmedi" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Bu endpoint bot istemlerini kabul etmiyor." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Sunucu yöneticisi olmak zorunda" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Yetersiz izin" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Bu endpoint için HTTP basic authentication gerekiyor." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Basic auth için geçersiz doğrulama başlığı" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Basit doğrulama için geçersiz doğrulama başlığı" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook botları yalnızca webhooklara ulaşabilirler" @@ -3328,95 +3398,101 @@ msgstr "" msgid "The password is too weak." msgstr "Şifre çok zayıf." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Alt alan adı 3 veya daha fazla karakterden oluşmalıdır." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Alt alan adının başında ve sonunda '-' bulunamaz." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Alt alan adında sadece küçük harfler, rakamlar ve '-' işaretleri kullanılabilir." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Alt alan adı müsait değil. Lüfen başka bir tane seçiniz." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Lütfen gercek e-posta adresinizi kullanın." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "{email} ile katılmak istediğiniz organizasyon mevcut değil." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Lütfen organizasyon yöneticinizden {email} için bir davetiye isteyiniz." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "E-posta adresiniz, {email}, bu organizasyonda hesap oluşturmak için izin verilmiş alan adlarından birine ait değil." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "+ işareti içeren e-posta adreslerine bu organizasyonda izin verilmemektedir." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "Tüm Zulip lisansları kullanımda olduğundan yeni üyeler bu organizasyona katılamaz. Lütfen sizi davet eden kişiyle iletişime geçin ve lisans sayısını artırmasını isteyin, ardından tekrar deneyin." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Yeni parola" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Yeni parola onayı" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Şifreniz çok zayıf olduğundan dolayı devre dışı bırakılmıştır. Yeni bir tane oluşturmak için şifrenizi sıfırlayın." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Anahtar" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Lütfen en fazla 10 E-posta adresi giriniz." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Zulip organizasyonunu bulamadık." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Geçersiz eposta '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3480,31 +3556,31 @@ msgstr "Alt alan adları '-' ile başlayamaz." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Alan adlarında sadece harfler, rakamlar, \".\" ve \"-\" bulunabilir." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Zaman bilgisi negatif olmamalıdır." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Konu boş bayt içermemelidir." -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Kanal iletileri için 1 kanal kimliği belirtilmelidir." -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "Kullanıcı, taslakları senkronize etmeyi devre dışı bıraktı." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Taslak mevcut değil" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Zulip'i açarak verileri önceden izleyin" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip bildirimleri" @@ -3537,166 +3613,166 @@ msgstr "Zaten bir hesabı var." msgid "Account has been deactivated." msgstr "Hesap devre dışı bırakıldı" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "'{}' emojisi yok" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Geçersiz özel emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Geçersiz özel emoji ismi." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Bu özel emoji devre dışıdır." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Geçersiz emoji kodu" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Geçersiz emoji ismi" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Geçersiz emoji türü." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Organizasyon yöneticisi veya emoji tasarımcısı olmalı" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emoji adı eksik" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Olay sırası atanamadı" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Oturum açık değil: API kimlik doğrulaması veya kullanıcı oturumu gerekli" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "'{stream}' kanalı mevcut değil" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "'{stream_id}' kimlik numaralı kanal bulunmamaktadır" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "organizasyon sahibi" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "kullanıcı" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Tek {entity} devre dışı bırakılamaz" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Geçersiz Markdown içerme durumu: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API kullanım sınırı aşıldı" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Hatalı biçimlendirilmiş JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Organizasyon üyesi olmak zorunda" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Organizasyon yöneticisi olmalı" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Organizasyon sahibi olmalı" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Kullanıcı adınız veya parolanız hatalı" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Hesap devre dışı bırakıldı" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Bu organizasyon devre dışıdır" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Bu organizasyonda parola doğrulaması devre dışı bırakıldı" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Parolanız devre dışı bırakıldı ve sıfırlanması gerekiyor" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Geçersiz API anahtarı" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Hatalı API anahtarı" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "'{event_type}' , henüz {webhook_name} webhook tarafından desteklenmemektedir." +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Geçersiz alt alan adı" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Erişim engellendi" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3704,6 +3780,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Tepki halihazırda mevcut." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Tepki mevcut değil." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3745,8 +3829,8 @@ msgid "Settings" msgstr "Ayarlar" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Bildirim ve ekran ayarlarınız için lütfen Ayarlar'a gidiniz." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3758,264 +3842,272 @@ msgid "" "and give it a go!" msgstr "Yeni bir görüşme başlatmak için buraya tıklayın. Bir konu seçin (En iyisi 2-3 kelimedir), ve bir deneyin!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Entegrasyon yapıları" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Sürekli entegrasyon" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Müşteri desteği" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Sunucuya kurulum" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Eğlence" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "İletişim" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Finansal" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Pazarlama" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Çeşitli" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Proje yönetimi" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Üretkenlik" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Versiyon kontrölü" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "İleti boş olmamalıdır" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "İleti boş bayt içermemelidir" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "{} operatörü desteklenmiyor." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Geçersiz süzme operatörü: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Eksik 'anchor' argümanı" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Geçersiz öbek" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Merhaba, ve Zulip'e hoşgeldin!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "İşte anladığım bazı mesajlar:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Bu bir özel kanaldır, kanal isminin yanında ki kilit işaretinden de anlaşılacağı üzere." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Özel kanallar sadece üyeleri tarafından görülebilinir." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "[Kanal ayarları]({stream_settings_url}) sayfasından `{initial_private_stream_name}` tıklayarak bu kanalı yönetebilirsiniz." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Bu ileti #**{default_notification_stream_name}** kanalındaki `konu gösterimi` konuya aittir." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Konular sohbeti düzenli yapan küçük araçlardır." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "[Kanallar ve konular]({about_topics_help_url}) sayfasından konular ile ilgili daha fazla bilgiye ulaşabilirsiniz." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Bu ileti #**{default_notification_stream_name}** kanalındaki `yüzen kaplumbağalar` konuya aittir." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4030,669 +4122,758 @@ msgstr "Geçersiz JSON cevabı" msgid "Invalid response format" msgstr "Geçersiz cevap formatı" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Geçersiz GCM seçenekleri: öncelik {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Geçersiz GCM seçenekleri: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Jeton (token) bulunamadı" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "Bu organizasyon, mobil push bildirimlerine ileti içeriği eklemeyi devre dışı bıraktı" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name}, @{user_group_name}'dan bahsetti:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} senden bahsetti:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} herkese bahsetti:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Kullanıcı bu sorgu için yetkilendirilmemiş" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' Zulip'i artık kullanmıyor." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push bildirimleri bouncer hatası: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "'{var_name1}' ve '{var_name2}' argümanları arasında karar verilemedi" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Eksik '{var_name}' argümanı" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr " '{var_name}' için kötü değer : {bad_value} " -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "\"{}\" argümanı geçerli bir JSON değil." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Hesap Güvenliği" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Bu kanala sadece organizasyon yöneticileri gönderebilir." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Bu kanala sadece organizasyon yöneticileri gönderebilir." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Misafir kullanıcılar bu kanala gönderemez." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Yeni üyeler bu kanala gönderemez." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "'{}' kanalına ileti yollama yetkisi yok." +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Lütfen 'stream' giriniz." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Lütfen birini seçiniz: 'stream' veya 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "'{}' kanal ismi alınmış." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Geçersiz kanal ismi '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Kanal(lar) ({}) mevcut değil." +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "'{}' idsi ile varsayılan kanal gurup yok." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Kanal ismi çok uzun (limit {} karakter)." - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Bu kanal için abone bilgisi mevcut değil" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Özel kanal için kayıtlı listesine ulaşılanamadı" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} bir boolean değil" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} bir tarih değil" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} bir dict değil" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} küsuratlı değil" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} çok küçük" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} bir sayı değil" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} çok büyük" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} bir liste değil" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Geçersiz {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} çok uzun (limit: {max_length} karakter)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} bir string değil" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Bu yükleme organizasyonunuzun yükleme hakkını aşıyor." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Resim dosyası açılamadı; resim dosyası mı yükledin?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Resim boyutu limiti aşmaktadır." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Geçersiz kullanıcı grubu" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "İsim çok uzun!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "İsim çok kısa!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "İsim'de geçersiz karakterler bulunuyor!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Geçersiz format!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Bu isim zaten var!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Kötü ad veya kullanıcı adı" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Geçersiz integrasyon '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Eksik konfigürasyon parametreleri: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Geçersiz {} değer {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Geçersiz ayar verisi!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Geçersiz bot türü" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Geçersiz arayüz türü" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Geçersiz kullanıcı ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Böyle bot yok" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Böyle bir kullanıcı yok" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Kullanıcı devre dışı bırakıldı" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} bir string değil" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} boş geçilemez." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Geçersiz {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} çok uzun (limit: {max_length} karakter)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} geçersiz uzunlukta {length}; {target_length} olmalı" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} bir tarih değil" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} bir sayı değil" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} çok küçük" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} çok büyük" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} küsuratlı değil" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} bir boolean değil" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} geçerli bir hex renk kodu değil" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} bir liste değil" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} tam {length} parçaya sahip olmalı" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} bir dict değil" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} anahtarı buradan {var_name} eksik" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Beklenmeyen argümanlar: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} allowed_type değil" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} yanlış)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} bir URL değil" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' boş geçilemez." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}', '{field_name}' için uygun bir seçenek değil." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} bir karakter ya da sayı listesi değil" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} bir karakter ya da sayı değil" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "HTTP olay başlığı '{header}' eksik" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "{} webhook zamanı milisaniye cinsinden bekler." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "zcommand sonunda '/' olmalı" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Böyle bir komut yok: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF hatası: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "kanal iletileri" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Emoji adında geçersiz karakterler" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Bilinmeyen regular expression hatası" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Pygments dilinde hatalı karakterler" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Yöneticiler, moderatörler, üyeler ve misafirler" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Yöneticiler, moderatörler ve üyeler." -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Yöneticiler ve moderatörler" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Sadece yöneticiler" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Hiç kimse" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Organizasyon sahibi" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Organizasyon ymeticisi" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderatör" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Üye" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Misafir" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-public" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Genel" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Özel, paylaşılan geçmiş" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Özel, korumalı geçmiş" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Tüm kalan üyeleri ileti gönderebilir" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Sadece organizasyon yöneticileri ileti gönderebilir" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Yalnızca organizasyon yöneticileri ve moderatörler gönderi yayınlayabilir" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Sadece organizasyon tam üyeleri ileti gönderebilir" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Özel emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip ekstra emoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "{} Kimliğine sahip kullanıcı devre dışı bırakıldı" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "{} Kimliğine sahip kullanıcı bir bottur" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Seçenekler listesi" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Kişi seçicisi" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Kısa metin" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Uzun metin" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Tarih seçicisi" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Dış hesap" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Bilinmeyen IP adresi" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "Bilinmeyen bir işletim sistemi" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Bilinmeyen bir tarayıcı" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "'queue_id' argümanı eksik" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "'last_event_id' argümanı eksik" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "{event_id} olayından daha yeni bir olay kesildi!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "{event_id} olayı bu sırada değildi" @@ -4760,89 +4941,123 @@ msgstr "Bu başlık zaten mevcut." msgid "Default custom field cannot be updated." msgstr "Varsayılan özel alan güncellenemez." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Uç sunucu yayınlanmış versiyonda mevcut değil" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend etkin değil" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Bilinmeyen hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "En az bir e-posta adresi belirtmelisiniz." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "{} Kimlik numaralı kanal bulunmamaktadır. Davetler gönderilmedi." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Böyle bir davetiye yok" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Bu organizasyonda ileti değiştirme tarihçesi tutulmuyor" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "Bu iletiyi silmek için geçerli yetkiniz bulunmamaktadır" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Bu iletiyi silmek için belirlenen zaman limiti geçmiştir" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "İleti zaten silinmiş" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Çok fazla ileti istendi (maksimum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Böyle bir konu yok '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Eksik gönderici" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Aynalama, alıcı kullanıcı kimlikleri ile izin verilmemektedir" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Geçersiz kopyalanmış ileti" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Bu organizasyonda Zephyr kopyalamaya (mirroring) izin verilmemektedir" @@ -4858,27 +5073,28 @@ msgstr "Kullanıcı zaten sessiz" msgid "User is not muted" msgstr "Kullanıcı sessize alınmamış" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Bot kullanıcılar için bağlantı durumu bilgisi desteklenmiyor" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "{user_id_or_email} ait bir veri yok" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Alıcı herhangi yeni bir değer göndermedi" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "İstemci, emoji_code veya reaction_type gönderdiğinde emoji_name de gönderilmelidir." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Geçersiz durum: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4894,37 +5110,37 @@ msgid "" "emoji_code" msgstr "Aşağıdaki argümanların en az biri gerekli: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Tepki mevcut değil." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Geçersiz dil '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "En az bir kimlik doğrulama yöntemi etkinleştirilmelidir." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Geçersiz video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Geçersiz giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Demo organizasyon olmalı." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Geçersiz alan: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4936,42 +5152,43 @@ msgstr "{domain} alanı zaten sizin organizasyonunuzun bir parçası." msgid "No entry found for domain {domain}." msgstr "{domain} alanı için hiç kayıt bulunamadı." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Bir ve yalnızca bir dosya yüklemelisiniz" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Dosya izin verilen {} MiB dosya boyutundan büyük." +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Kullanım sınırı aşıldı." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Lütfen {email} e-posta adresinden manuel bir dışarı aktarım isteyin." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Geçersiz veri dışa aktarım ID'si" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Dışa aktarım zaten silinmiş" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4979,7 +5196,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Tam olarak bir simge yüklemeniz gerekir." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier bulunamadı." @@ -4987,107 +5204,100 @@ msgstr "Linkifier bulunamadı." msgid "You must upload exactly one logo." msgstr "Sadece bir logo yükleyebilirsin." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Hatalı oyun alanı" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Kullanıcının '{principal}' adına sorgu yürütme yetkisi bulunmuyor" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Özel kanallar varsayılan yapılamaz." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "\"new_description\" veya \"new_group_name\" değişkeni göndermelisiniz." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr " \"op\" için seçilen değer geçersiz. Lütfen \"add\" veya \"remove\" değerlerinden birini seçiniz." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Varsayılan kanallar özel yapılamaz." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Kanal halihazırda bu isme sahip!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Gerçekleştirilecek bir eylem yok. Lütfen \"ekle\" veya \"sil\" işlemlerinden en az birini seçiniz." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} sizi {stream_name} kanalına abone yaptı." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} sizi bu kanallara abone yaptı:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "({stream_name}) kanalına erişim başarısız oldu." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Sadece diğer Zephyr aynalama kullanıcılarını özel kanallara davet edebilirsin." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} bu kanalları oluşturdu: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} yeni bir kanal oluşturdu {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "yeni kanallar" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Bilinmeyen abonelik özelliği: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "{} kanal idsine abone olunamadı" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Alt bildirim için geçersiz JSON" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Bu dosyayı görüntülemeye yetkili değilsiniz.

" @@ -5103,97 +5313,108 @@ msgstr "Kullanıcı, kanal iletileri için yazma bildirimini devre dışı bıra msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Dosya bulunmadı.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Geçersiz anahtar" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Geçersiz dosya adı" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Yüklenecek bir dosya belirtmelisiniz" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Aynı anda yalnızca bir dosya yükleyebilirsiniz" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Verilen yeni veri yok" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "{user_id} kullanıcısı hali hazırda bu grubun bir üyesi." -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "bu kullanıcı gurubunda '{}' diye biri yok" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Bu organizasyonda avatar değişiklikleri devre dışı bırakılmıştır." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Bu organizasyonda e-posta adresi değişiklikleri devre dışı bırakıldı." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Geçersiz default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Geçersiz bildirim sesi '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Geçersiz e-posta gruplama süresi: {} saniye" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Zulip parolan LDAP tarafından yönetilmektedir" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Yanlış parola!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Çok fazla kez deniyorsunuz! Lütfen {} sonra tekrar deneyin." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Yeni parola zayıf!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Tam olarak bir avatar resmi yüklemelisin." @@ -5240,6 +5461,10 @@ msgstr "Geçersiz gömülü bot adı." msgid "Username already in use" msgstr "Kullanıcı adı zaten kullanımda" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5250,8 +5475,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Bu organizasyonda tek kullanımlık E-posta adreslerinin kullanımına izin verilmemektedir" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "'{}' e-postayı kullanılıyor" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5269,27 +5495,27 @@ msgstr "Geçersiz Zoom oturum bilgisi" msgid "Invalid Zoom credentials" msgstr "Geçersiz Zoom kimlik bilgisi" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Bir Zoom görüşmesi oluşturulamadı" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton yapılandırılmamış." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Geçersiz imza." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "BigBlueButton sunucusuna bağlanırken hata oluştu." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "BigBlueButton sunucusunun kimliği doğrulanırken hata oluştu." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton sunucusu beklenmeyen bir hata döndürdü." @@ -5309,28 +5535,28 @@ msgstr "Geçersiz Kerberos belleği" msgid "We were unable to set up mirroring for you" msgstr "Sizin için aynalamayı ayarlayamayadık" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Geçersiz istek" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Bilinmeyen webhook isteği" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Konu boş olamaz" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "İçerik boş olamaz" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Hatalı biçimlendirilmiş JSON girişi" @@ -5349,7 +5575,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5357,19 +5583,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Pivotal'dan gelen veri işlenemedi" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Hata: channels_map_to_topics parametresi 0 veya 1'den farklı" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Slack'ten bir ileti" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Bilinmeyen WordPress webhook aksiyonu: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5386,47 +5613,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Geçerli Zulip sunucusu API anahtarı ile doğrulama yapmalısınız" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Geçersiz UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Geçersiz jeton (token) türü" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} geçerli bir isim değil" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Geçersiz özellik {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Veri sırası doğru değil" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Geçersiz veri." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Parolanızı sıfırlamanız gerekiyor." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "id_token parametresi eksik" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Geçersiz OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Aynı anda mobile_flow_otp ve desktop_flow_otp kullanılamaz." diff --git a/locale/tr/translations.json b/locale/tr/translations.json index 2a9487c256..e6759ae643 100644 --- a/locale/tr/translations.json +++ b/locale/tr/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(gizli)", "(no description)": "(açıklama yok)", "(no topic)": "(konu yok)", + "(or )": "", "(you)": "(sen)", "({message_retention_days} days)": "({message_retention_days} gün)", "/dark (Switch to the dark theme)": "/dark (Koyu temaya geç)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} bu kanala abone değil. Abone olmadıkça bilgilendirilmeyecektir.", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "Özel kanallar ve iletileri dışa aktarma hakkında bilgi edinmek içinw buraya Tıkla", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Daha fazla alan için Yükseltme ", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Uyarı kelimesi ekle", "Add all users": "", "Add another user...": "Bir kullanıcı daha ekle...", + "Add audio call": "", "Add code playground": "Kod oyun alanı ekle", + "Add default streams": "", + "Add email": "", "Add emoji": "Emoji ekle", "Add emoji reaction": "Emoji tepkisi ekle", "Add extra emoji for members of the {realm_name} organization.": "{realm_name} organizasyonunun üyeleri için fazladan emoji ekleyin.", "Add global time": "Evrensel zaman ekle", "Add linkifier": "Linkifier ekle", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Üye ekle…", - "Add new default stream": "Yeni varsayılan kanal ekle", "Add new user group": "", "Add one or more users": "Bir veya daha fazla kullanıcı ekle", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "Görev ekle", "Add video call": "Görüntülü çağrı ekle", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Başarıyla eklendi!", "Added successfully.": "", "Administrator": "Yönetici", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Hepsi", "All direct messages": "", + "All groups": "", "All messages": "Tüm iletiler", "All messages including muted streams": "Sessize alınmış kanallar dahil tüm iletiler", "All streams": "Tüm kanallar", @@ -136,9 +142,11 @@ "Allow subdomains": "Alt alan adlarına izin ver", "Allowed domains": "İzin verilen alan adları", "Allowed domains: {domains}": "İzin verilen alan adları: {domains}", + "Already members:": "", "Already not subscribed.": "Zaten abone değil.", "Already subscribed to {stream}": "{stream} için zaten abone olunmuş", "Already subscribed users:": "Zaten abone olan kullanıcılar:", + "Already subscribed.": "", "Always": "Her zaman", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Bir API anahtarı (key) Zulip'e program aracılığıyla ulaşmak için kullanılabilir. API anahtarınızı bilen herkes iletilerinizi okuma, sizin adınıza ileti gönderme, ve benzer şekilde Zulip'de yerinize hareket etme yetkisine sahiptir. Bu yüzden API anahtarınızı, parolanızı koruduğunuz gibi dikkatli korumalısınız.
Eğer yapmak istediğiniz işlem için kendi hesabınıza erişim gerekmiyorsa, bot veya botlar oluşturup Zulip'e bu bot hesaplarının API anahtarlarıyla ulaşmanızı tavsiye ederiz.", "An hour ago": "1 saat önce", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Faal Kanal", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "''''{stream_name}'''' kanalını oluşturmak ve ona {count} kullanıcı abone etmek istediğinizden emin misiniz?", "Are you sure you want to deactivate this organization?": "Bu organizasyonu devre dışı bırakmak istediğinizden emin misiniz?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Davetiyeyi yeniden göndermek istediğinizden emin misiniz ?", "Are you sure you want to revoke the invitation to {email}?": "{email} adresine gönderilen daveti iptal etmek istediğinizden emin misiniz?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "{referred_by} tarafından oluşturulan bu davet bağlantısını iptal etmek istediğinizden emin misiniz?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": " içindeki tüm iletilerin yıldızını kaldırmak istediğinizden emin misiniz? Bu işlem geri alınamaz.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Yıldızlı tüm iletilerin yıldızını kaldırmak istediğinizden emin misiniz? Bu işlem geri alınamaz.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Gravatar'dan avatar", "Back to streams": "Kanallara geri dön", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Faturalandırma", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Bot türü", "Bots": "Botlar", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "Kanallara göz atın", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "Meşgul", "By deactivating your account, you will be logged out immediately.": "Hesabınızı devre dışı yaptığınızda hemen sistemden çıkarılacaksınız.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Ortaya çıkarmak için buraya tıklayın.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Kaydetmek için giriş kutusunun dışına tıklayın. Eklenen veya çıkarılan herkesi otomatik olarak bilgilendireceğiz.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Kapat", "Close modal": "Modali Kapat", @@ -232,7 +248,7 @@ "Commuting": "Trafikte", "Compact": "", "Complete": "Tamamlandı", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "Zulip organizasyonunuzun amacını açıklamak ve markalaştırmak için organizasyon profilinizi tamamlayın.", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "İleti oluştur", "Compose your message here": "İletinizi buraya giriniz", "Compose your message here...": "İletinizi buraya yazınız...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Göndermeden önce emojileri dönüştür (:) 😃 olarak dönüşür)", "Cookie Bot": "Çerez botu", "Copied!": "Kopyalandı!", + "Copy URL": "", "Copy address": "", "Copy and close": "Kopyala ve kapat", "Copy code": "Kodu kopyala", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Özel", + "Custom URL": "", "Custom emoji": "Özel emoji", "Custom language: {query}": "Özel dil: {query}", "Custom linkifier added!": "Özel linkifier eklendi!", @@ -302,10 +320,12 @@ "Deactivated": "Kullanım dışı bırakıldı", "Deactivated users": "Devre dışı kullanıcılar", "December": "Aralı", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Varsayılan dile {language}. Vurgulamayı devre dışı bırakmak için 'text' kullanın.", "Default language for code blocks": "", "Default streams": "Varsayılan kanallar", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Varsayılan kullanıcı ayarları", "Default view": "Varsayılan görünüm", @@ -314,12 +334,14 @@ "Delete": "Sil", "Delete alert word": "Uyarı kelimesini sil", "Delete all drafts": "Tüm taslakları sil", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Taslak sil", "Delete file": "Dosya sil", "Delete file?": "", + "Delete group": "", "Delete icon": "Ikon sil", "Delete linkifier?": "", "Delete logo": "Logoyu sil", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Organizasyon büyüklüğüne göre dışar aktarım saniyeler ile saat arasında sürebilir.", "Deprecation notice": "Son verme bilgilendirmesi", "Description": "Tanım", + "Deselect draft": "", "Desktop": "Masaüstü", "Desktop & mobile apps": "Masa üstü & mobil uygulamalar", "Desktop message notifications": "Masaüstü ileti bildirimleri", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Detaylı ileti format dökümantasyonu", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "Direkt mesajlar", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Devre dışı", "Discard": "İptal et", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Görüntü ayarları", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "Herkesi eklemek istiyor musunuz?", + "Do you want to mark them all as read?": "", "Domain": "Alan adı", "Don’t allow disposable email addresses": "Geçici e-posta adreslerine izin verme", "Download": "İndir", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "Linkifier düzenle", "Edit message": "İletiyi düzenle", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Seçili taslağı düzenle", "Edit selected message or view source": "", "Edit status": "Durumu düzenle", @@ -398,7 +423,6 @@ "Edit your last message": "Son iletinizi düzenleyin", "Edit your profile": "Profil düzenle", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Düzenlendi ({last_edit_timestr})", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Dış hesap tipi", "External link": "Dış bağlantı", "Failed": "Başarısız oldu", + "Failed adding one or more streams.": "", "Failed to create video call.": "Video arama oluşturulamadı", "Failed to generate preview": "Önizleme oluşturmada hata oluştu", "Failed to upload %'{file}'": "%'{file}' yüklenemedi", @@ -485,11 +510,9 @@ "Filter exports": "Dışa aktarımları süz", "Filter groups": "", "Filter invites": "Davetiyeleri süz", - "Filter languages": "Dilleri süz", "Filter linkifiers": "Linkifierları süz", "Filter members": "", "Filter muted users": "Sesi kapatılmış kullanıcıları süz", - "Filter roles": "", "Filter streams": "Kanalları süz", "Filter subscribers": "", "Filter topics": "Konuları süz", @@ -500,6 +523,9 @@ "First message": "İlk ileti", "First time? Read our guidelines for creating and naming streams.": "İlk kullanışınız mı? Kanal oluşturmak ve adlandırmak için yönergeleri.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY ilişkilendirmesi", "GIPHY integration": "GIPHY entegrasyonu", "General": "Genel", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Davet linki oluştur", "Generate new API key": "Yeni API key oluştur", @@ -542,14 +569,18 @@ "High contrast mode": "Yüksek kontrast modu", "Hint": "İpucu", "Hint (up to 80 characters)": "İpucu (80 karaktere kadar)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "İnsanlar", "Idle": "Eylemsiz", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Yok sayılan devre dışı bırakılan kullanıcılar:", "Image": "Resim", "In a meeting": "Toplantıda", "Inactive": "", "Inactive bots": "Devre dışı botlar", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "İleti bildirim e-postalarına ileti içeriğini dahil et", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Gelen webhooklar sadece ileti gönderebilir", "Initiate a search": "Bir arama başlat", "Insert new line": "Yeni satır ekle", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Entegrasyonlar", "Interface": "Arayüz", "Invalid URL": "Geçersiz URL", @@ -581,6 +614,8 @@ "Inviting...": "Davet ediyor...", "Italic": "Yatık", "January": "Ocak", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Bağlandı", @@ -599,8 +634,10 @@ "Last 30 days": "Son 30 Gün", "Last 6 months": "Son 6 Ay", "Last active": "Son aktiflik", + "Last edited {last_edit_timestr}": "", "Last message": "Son ileti", "Last modified": "Son değiştirilme", + "Last moved {last_edit_timestr}": "", "Learn more": "Daha fazla öğren", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Çıkış yap", "Looking for our integrations or API documentation?": " Entegrasyon veya API belgelerimizi mi arıyorsunuz?", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Kanalları yönet", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Anılan yer", "Mentions": "Anmalar", - "Menu": "Menü", "Menus": "Menüler", "Message #{stream_name}": "İleti #{stream_name}", "Message #{stream_name} > {topic_name}": "İleti #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "İleti {recipient_names}", "Message {recipient_name} ({recipient_status})": "İleti {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Mobil", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Konu taşı", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Bir abone tarafından davet edilmelidir; yeni aboneler yalnızca üye olduktan sonra gönderilen iletileri görebilir; yönetici olmayan kullanıcılardan gizli", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Bir abone tarafından davet edilmelidir; yeni aboneler tam ileti geçmişini görüntüleyebilir; yönetici olmayan kullanıcılardan gizli", + "Mute": "", "Mute stream": "Kanalı sustur", "Mute this user": "Bu kullanıcının sesini kapat", "Mute topic": "Konuyu susturun", @@ -734,38 +773,42 @@ "New password is too weak": "Yeni parola çok zayıf", "New stream announcements": "", "New stream message": "Yeni kanal iletisi", + "New stream notifications": "", "New task": "Yeni görev", "New topic": "Yeni konu", "New user announcements": "", + "New user notifications": "", "Next message": "Sonraki ileti", "Next unread direct message": "", "Next unread topic": "Sonraki okunmamış konu", - "Next week": "Gelecek hafta", "No bots match your current filter.": "Şu anki süzmeyle eşleşen bot bulunmuyor.", + "No conversations match your filters.": "", "No custom emoji.": "Özel emoji yok", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Şu anki süzmeyle eşleşen varsayılan kanal bulunmuyor.", "No description.": "Tanım yok.", + "No drafts selected": "", "No drafts.": "Taslak yok.", "No exports.": "Dışa aktarım yok", "No invites match your current filter.": "Şu anki süzmeyle eşleşen davetiye bulunmuyor.", "No language set": "Dil ayarlanmadı", "No linkifiers set.": "Linkifier oluşturulmadı.", + "No matching results": "", "No matching users.": "Eşleşen kullanıcı yok.", "No one has read this message yet.": "Bu mesajı henüz kimse okumadı.", "No owner": "Organizasyon yöneticisiz yok", "No playgrounds configured.": "Yapılandırılmış oyun alanı yok.", "No restrictions": "Kısıtlama yok", "No scheduled messages.": "", - "No search results": "Arama sonucu yok", "No search results.": "", "No stream subscriptions.": "Kanal aboneliği yok.", "No streams": "Kanal yok", "No topics are marked as resolved.": "Hiçbir konu çözüldü olarak işaretlenmedi.", - "No topics match your current filter.": "Şuanki süzme ile eşleşen konu yok.", "No user group subscriptions.": "Kullanıcı grubu aboneliği yok.", "No user groups": "", "No user to subscribe.": "Abone olacak kullanıcı yok", "No users match your current filter.": "Şu anki süzmeyle eşleşen kullanıcı bulunmuyor.", + "No users to add.": "", "No, I'll catch up.": "Hayır, iletileri okuyacağım.", "Nobody": "Hiç kimse", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Kasım", + "Numbered list": "", "October": "Eki", "Old password": "Eski parola", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Sadece kanal üyeleri özel kanallara kullanıcı ekleyebilir", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Aç", "Open message menu": "İleti menüsünü aç", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Konu listesi için > basınız", "Prevent users from changing their avatar": "Kullanıcıların avatarlarını değiştirmesine izin verme", "Prevent users from changing their email address": "Kullanıcıların kendi e-posta adreslerini değiştirmelerini engelle", @@ -869,6 +915,7 @@ "Previous message": "Önceki ileti", "Privacy": "Mahremiyet", "Privacy settings": "Gizlilik ayarları", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Özel, korumalı geçmiş", "Private, shared history": "Özel, paylaşılan geçmiş", "Profile": "Profil", @@ -883,6 +930,7 @@ "Reactivate bot": "Botu yeniden faal yap", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "Okundu raporları", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Taslak olarak kaydet", "Saved. Please reload for the change to take effect.": "Kaydedildi. Değişikliğin yürürlüğe girmesi için tekrar yükle.", "Saving": "Kaydediliyor", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "E-posta ayarlamayı öğrenin.", "Select a stream": "Kanal seçin", "Select a stream below or change topic name.": "Aşağıdan bir kanal seçin veya konu ismini değiştirin.", - "Select date and time": "Tarih ve zaman seç", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Emoji seçin", "Select language": "", + "Select stream": "", "Send": "Gönder", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Ben uzaktayken özet e-postası gönder", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Yüklenen ve bağlantı verilen resimlerin ön izlemesini göster", "Show starred message count": "İşaretli ileti sayısını göster", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "API anahtarını göster/değiştir", "Sign up": "Kayıt ol", "Silent mentions do not trigger notifications.": "Sessiz anmalar bildirimleri tetiklemez.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Tahmini haftalık trafiğe göre sırala", "Sort by name": "İsme göre sırala", "Sort by number of subscribers": "Kayıtlı kullanıcı sayısına göre sırala", + "Sort by unread message count": "", "Spoiler": "Spoiler", "Star": "Yıldız", "Star selected message": "Seçili iletiyi yıldızla", @@ -1024,8 +1080,10 @@ "Subscribe": "Abone ol", "Subscribe them": "Abone yapın", "Subscribe to/unsubscribe from selected stream": "Seçili kanala üye ol / üyelikten çık", + "Subscribe {full_name} to streams": "", "Subscribed": "Abonelikler", "Subscribed streams": "Abone olunan kanallar", + "Subscribed successfully!": "Üye olma işlemi başarılı!", "Subscriber count": "Abone sayısı", "Subscribers": "Aboneler", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Hiç alarm kelimesi yok.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Zulip sunucusu eski versiyonda çalışmaktadır ve güncellenmelidir.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Zulip bildirimi buna benzer.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Gönderenizi sessize aldığınız için bu ileti gizlendi.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Zaman dilimi", "Time's up!": "Süre doldu!", "Tip: You can also send \"/poll Some question\"": "İpucu: Aynı zamanda \"/poll soru öbeği\" şeklinde de gönderebilirsiniz", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Çok satırlı bir kod bloğuna sözdizimi vurgulaması eklemek için dilin ilk Pigmentlerin kısa adını ilk geri tik setinden sonra ekleyin. Ayrıca her satırı 4 boşlukla girintileyerek bir kod bloğu oluşturabilirsiniz.", "To invite users, please increase the number of licenses or deactivate inactive users.": "Kullanıcıları davet etmek için lütfen lisans sayısını artırın veya etkin olmayan kullanıcıları devre dışı bırakın .", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Bugün", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Aboneliği aç/kapa", "Toggle the gear menu": "Dişli menüsünü açıp kapa", "Toggle topic mute": "Konuyu sessize almayı açıp kapa", - "Tomorrow": "Yarın", "Tomorrow at {time}": "", "Topic": "Konu", "Topic muted": "Konu susturuldu", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "İkili doğrulama", "Type": "Tür", + "URL": "", + "URL for your integration": "", "URL pattern": "URL kalıbı", - "URL prefix": "URL öneki", "URL template": "", "USERS": "KULLANICILAR", "Uncheck all": "Tüm seçilenleri iptal et", @@ -1139,6 +1197,7 @@ "Unmute this user": "Bu kullanıcının sesini aç", "Unmute topic": "Konunun sesini açın", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Kanalı tepeden çıkar", "Unread": "Okunmamış", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Taslakları göster", - "View edit history": "Güncelleme geçmişini görüntüle", + "View edit and move history": "", "View file": "Dosyayı göster", "View in playground": "playgroundu görüntüle", "View in {name}": "{name} içinde görüntüle", @@ -1227,9 +1286,10 @@ "Web-public": "Web-public", "Wednesday": "Çarşamba", "Week of {date}": "{date} Haftası", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Tekrar hoşgeldiniz! {unread_msgs_count} okunmamış iletiniz var. Hepsini okundu olarak işaretlemek istiyor musunuz?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "@all gibi anımsamaların bildirimler için olan geçerliliği.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Kanala kimler erişebilir?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Kullanıcı gruplarını kim oluşturabilir ve düzenleyebilir", "Who can create private streams": "Kimler özel kanallar oluşturabilir", "Who can create public streams": "Kimler herkese açık kanal oluşturabilir", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "Kimler kendi mesajlarını silebilir", - "Who can invite users to this organization": "Kimler kullanıcıları bu organizasyona davet edebilir", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Kanala kimler yazabilir?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Büyük kanallarda @all/@everyone bahsetmelerini kim kullanabilir", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Siz ve", "You and {display_reply_to}": "Siz ve {display_reply_to}", "You and {recipients}": "Siz ve {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Şu anda bu kanala abone değilsiniz.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Güvenlik hataları bulunan eski bir Zulip masaüstü uygulamasını kullanıyorsunuz.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Bu kanala abone değilsiniz ve bu konuda konuşan olmadı.", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Bu Markdown benzeri tablo sözdizimi ile tablo da oluşturabilirsiniz.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Bu kanalda wildcard bahsetmeyi kullanmaya izniniz bulunmamakta.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Sonuç", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Sesini kapattınnız .", + "You have muted this topic": "", "You have no active bots.": "Faal botunuz bulunmuyor.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Henüz hiçbir kullanıcının sesini kapatmadınız.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Herhangi bir dosya yüklemediniz.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Henüz sizden bahsedilmedi.", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Kanala üye olmadan kanal oluşturabilmek için organizasyon yöneticisi olmalısınız.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "İleti gönderebilmek için Zephyr aynalama (mirroring) çalıştırıyor olmalısınız!", "You searched for:": "Şunu aradınız:", "You subscribed to stream ": "", "You type": "Yazdınız", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Bu kanala abone değilsiniz. Diğer kullanıcılar iletinize cevap verirse bilgilendirilmeyeceksiniz.", "Your API key:": "API anahtarınız:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip kullanıcı e-posta adreslerini teyid etmek ve bildirim göndermek için e-posta göndermelidir.", "Zulip needs your permission to enable desktop notifications.": "Zulip'in masaüstü bildirimlerini etkinleştirmek için izninize ihtiyacı var.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip'in çevirileri, gönüllü çevirmenlerden oluşan muhteşem topluluğumuz tarafından sağlanmaktadır. Yardım etmek isterseniz, bkz. Zulip çeviri yönergeleri .", "[Configure]": "[Ayarla]", - "[Disable]": "[Devre dışına al]", - "[More…]": "[Daha fazla…]", "[Quoting…]": "", - "[Unset]": "[Unset]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "ve {remaining_senders, plural, {1 other} daha {# others}}.", "back to streams": "", "beta": "beta", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1 saat içinde", - "in 20 minutes": "20 dakika içinde", - "in 3 hours": "3 saat içinde", "invisible mode off": "", "leafy green vegetable": "yapraklı yeşil sebze", "marketing": "pazarlama", "more conversations": "daha fazla görüşme", "more topics": "daha fazla konu", - "or": "veya", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} gün önce", "{full_name} is typing…": "{full_name} yazıyor…", "{hours} hours ago": "{hours} saat önce", - "{items_selected} selected": "{items_selected} seçildi", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} other {}} will remain in the current topic.", "{minutes} min to edit": "Düzenlemek için {minutes} dakika", "{minutes} minutes ago": "{minutes} dakika önce", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} other {}}", "{seconds} sec to edit": "Düzenlemek için {seconds} saniye", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [dedi]({link_to_message}):", "{username} reacted with {emoji_name}": "{username}, {emoji_name} ile reaksiyona girdi" diff --git a/locale/uk/LC_MESSAGES/django.po b/locale/uk/LC_MESSAGES/django.po index 0965d31cca..b4ca8d3eb7 100644 --- a/locale/uk/LC_MESSAGES/django.po +++ b/locale/uk/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Mykola Ronik , 2018-2021\n" "Language-Team: Ukrainian (http://app.transifex.com/zulip/zulip/language/uk/)\n" @@ -21,46 +21,47 @@ msgstr "" "Language: uk\n" "Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "Не дозволено для гостьових користувачів" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Неправильна організація" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "Відкриті канали" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "Приватні канали" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "Невідома назва діаграми: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Час початку пізніше, ніж час закінчення. Початок: {start}, кінець: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Аналітичні дані відсутні. Будь ласка, зв'яжіться зі своїм адміністратором сервера." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "Недійсний параметр" @@ -121,29 +122,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "Ви повинні згенерувати рахунок для мінімум {} користувачів." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "З цієї сторінки не можна обробляти рахунки з більш ніж {} ліцензіями. Щоб завершити оновлення, зверніться до: {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Щось пішло не так. Зверніться до {email}." -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Щось пішло не так. Перезавантажте сторінку." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Щось пішло не так. Будь ласка, зачекайте кілька секунд і повторіть спробу." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -175,7 +178,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -191,14 +194,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -210,7 +213,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "Повинен бути адміністратором платежів або власником організації" @@ -260,7 +263,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Внутрішня помилка сервера" @@ -562,9 +565,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -582,9 +585,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -594,9 +597,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -859,51 +862,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Зареєструватися з допомогою %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Дякуємо за реєстрацію!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Ще немає електронної пошти? Ми можемо повторно надіслати." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Про всяк випадок, подивіться у своїй теці зі спамом." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Спробуємо зараз." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "Повідомлення" @@ -1151,6 +1154,159 @@ msgstr "Звичайні користувачі" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Ласкаво просимо до Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "URL-адреса організації: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Використовуйте свій обліковий запис LDAP для входу" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s на Zulip: Деталі Вашої нової організації" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s на Zulip: Деталі Вашого нового облікового запису" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "Ви приєднались до Zulip організації %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1158,6 +1314,39 @@ msgstr "" msgid "Hi," msgstr "Привіт," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "Якщо Ви не робили запит на цю зміну, будь ласка зв'яжіться з нами негайно за адресою <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1171,23 +1360,10 @@ msgstr "Ми отримали запит для зміни адреси елек msgid "Confirm email change" msgstr "Підтвердити зміну електронної пошти" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Підтвердити свою нову електронну адресу" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "Якщо Ви не робили запит на цю зміну, будь ласка зв'яжіться з нами негайно за адресою <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1241,17 +1417,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1356,225 +1521,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Ласкаво просимо до Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "URL-адреса організації: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Використовуйте свій обліковий запис LDAP для входу" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s на Zulip: Деталі Вашої нової організації" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s на Zulip: Деталі Вашого нового облікового запису" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "Ви приєднались до Zulip організації %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Приклади коротких тем" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Перейти до Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1659,14 +1605,14 @@ msgstr "Термін дії цього запрошення закінчуєть #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1698,21 +1644,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1720,21 +1690,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1777,29 +1747,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nЦей лист не включає вміст повідомлень, тому що ви вимкнули показ вмісту повідомлень у сповіщеннях електронною поштою.\nДодаткова інформація: %(alert_notif_url)s.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nНе відповідайте на цей електронний лист. Цей сервер Zulip не налаштований на прийняття вхідних листів. Допомога:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Керування налаштуваннями електронної пошти:" @@ -1962,6 +1932,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1990,6 +1968,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Приклади коротких тем" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Перейти до Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2378,7 +2428,7 @@ msgid "Incoming webhooks" msgstr "Вхідні вебхуки" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Інтерактивні боти" @@ -2878,292 +2928,295 @@ msgid "" " " msgstr "\n Ви також можете скористатися настільним додатком Zulip.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "реєстрації" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} щойно зареєструвався в Zulip. (всього: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} прийняв ваше запрошення приєднатися до Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Недійсне відображення порядку." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Ідентифікатор поля {id} не знайдено." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Недійсне ім'я стандартної групи каналу '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Ім'я стандартної групи каналу надто довге (обмеження: {} символів)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Ім'я стандартної групи каналу '{}' містить символи NULL (0x00)." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Недійсна група основних каналів {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' є основним каналом і не може бути доданий до '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Група основних каналів '{group_name}' вже існує" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Канал '{stream_name}' вже присутній у групі основних каналів '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Канал '{stream_name}' не присутній у групі основних каналів '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "Ця група основних каналів вже названа '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Група основних каналів '{}' вже існує" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Ваш обліковий запис занадто новий для надсилання запрошень для цієї організації. Попросіть адміністратора організації або досвідченого користувача." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Деякі електронні листи не підтверджені, тому ми не надсилали жодних запрошень." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Ми не змогли запросити когось." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Деякі з цих адрес вже використовують Zulip, тому ми не надіслали їм запрошення. Ми надіслали запрошення всім іншим!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Нема що змінювати" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Помилковий propagate_mode без редагування теми" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Не вдається змінити вміст повідомлення під час зміни каналу" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Віджети не можна редагувати." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Ваша організація вимкнула редагування повідомлень" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Ви не маєте права редагувати це повідомлення" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "Термін для редагування цього повідомлення минув" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "Ви не маєте дозволу на використання масових згадувань у цьому каналі." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "Ви не маєте дозволу на переміщення цього повідомлення" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "Ви не маєте дозволу на переміщення цього повідомлення тому що не маєте доступу до його каналу" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Недійсний прапор: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Прапорець не можна редагувати: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Недійсна операція прапору повідомлення: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Недійсне(і) повідомлення" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Неможливо відобразити повідомлення" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Очікується рівно один канал" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Недійсний тип даних для каналу" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Недійсний тип даних для одержувачів" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Списки одержувачів можуть містити електронні адреси або ID користувачів, але не обидва разом." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Ваш бот {bot_identity} намагався надіслати повідомлення в ID каналу {stream_id}, але каналу з цим ID немає." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Ваш бот {bot_identity} намагався надіслати повідомлення в канал {stream_name}, але такого каналу немає. Клацніть [тут]({new_stream_link}) щоб створити його." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Ваш бот {bot_identity} намагався надіслати повідомлення в канал {stream_name}. Канал існує, але не має підписників." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Віджети: API розробник надіслав JSON з помилковим вмістом" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Віджети: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Реакція вже існує." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "Користувацька емодзі з таким іменем вже існує." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3177,8 +3230,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3197,18 +3250,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3217,38 +3284,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} перейменував канал {old_stream_name} на {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "Без опису." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3258,56 +3325,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Недійсний ID користувача {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "Група користувачів '{}' вже існує." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "Цей API недоступний для вхідних вебхук ботів." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Обліковий запис не пов'язаний з цим піддоменом" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "Ця точка прийому не приймає запити від ботів." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Має бути адміністратором сервера" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Недостатній дозвіл" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "Ця кінцева точка вимагає базової автентифікації HTTP." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Невірний заголовок авторизації для базової аутентифікації" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Відсутня заголовок авторизації для базової аутентифікації" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Вебхук боти мають доступ тільки до вебхуків" @@ -3322,95 +3392,101 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Піддомен повинен мати 3 символа, або більше." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Піддомен не може починатись або закінчуватися символом '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Піддомен може містити лише малі літери, цифри та '-'." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Піддомен недоступний. Будь ласка, виберіть інший." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Будь ласка, використовуйте свою справжню електронну адресу." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "Організація, яку ви намагаєтеся приєднати, використовуючи {email}, не існує." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Будь ласка, запросіть інвайт для {email} у адміністратора організації." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Ваша електронна адреса, {email}, не знаходиться в одному з доменів, яким дозволено зареєструватися для облікових записів у цій організації." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Електронні адреси що містять +, не дозволяються в цій організації." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "Новий пароль" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "Підтвердження нового пароля" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Токен" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Будь ласка, введіть не більше 10 електронних адрес." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "Ми не змогли знайти цю організацію Zulip." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Недійсна адреса електронної пошти '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3474,31 +3550,31 @@ msgstr "Піддомени не можуть починатись чи закі msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Домен може мати лише літери, цифри, '.' та '-'." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Часова мітка не може бути від'ємною." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Тема не повинна містити нульових байтів" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Потрібно вказати рівно 1 ідентифікатор каналу для повідомлень каналу" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Чернетки не існує" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Відкрийте Zulip, щоб побачити прихований вміст" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Сповіщення Zulip" @@ -3531,166 +3607,166 @@ msgstr "Вже є обліковий запис." msgid "Account has been deactivated." msgstr "Обліковий запис був деактивований." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Емодзі '{}' не існує" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Недійсний користувацький емодзі." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Недійсне ім'я користувацького емодзі." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "Ця нестандартна емодзі була деактивована." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Недійсний код емодзі." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Недійсне ім'я емодзі." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Недійсний тип емодзі." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Необхідно бути адміністратором організації або автором емодзі" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Відсутня назва емодзі" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Не вдалося виділити чергу подій" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Відсутній вхід: потрібні API автентифікації або сесія користувача" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Канал '{stream}' не існує" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Канал з ідентифікатором '{stream_id}' не існує" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "власник організації" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "користувач" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Неможливо деактивувати єдину {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Markdown містить недійсний вираз: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "Використання API перевищило встановлений ліміт" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Помилковий JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Має бути учасником організації" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Має бути адміністратором організації" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Має бути власником організації" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Обліковий запис деактивовано" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "Ця організація була деактивована" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Неправильний ключ API" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Неправильний ключ API" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "'{event_type}' подія на поточний момент не підтримується вебхуком {webhook_name}" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Недійсний піддомен" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Доступ заборонено" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3698,6 +3774,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Реакція вже існує." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Реакції не існує." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3739,8 +3823,8 @@ msgid "Settings" msgstr "Налаштування" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Перейдіть у Налаштування щоб настроїти Ваші повідомлення та відображення." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3752,264 +3836,272 @@ msgid "" "and give it a go!" msgstr "Натисніть тут, щоб розпочати нову бесіду. Виберіть тему (найкраще всього 2-3 слова), і дайте їй розпочатись!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Інтеграційні фреймворки" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Безперервна інтеграція" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Підтримка клієнтів" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Розгортання" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Зв'язок" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Фінанси" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Маркетинг" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Різне" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Управління проектами" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Продуктивність" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Контроль версій" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Повідомлення не може бути порожнім" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Повідомлення не повинно містити нульових байтів" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Оператор {} не підтримується." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Помилковий оператор пошуку: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Відсутній 'anchor' аргумент" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Помилковий гачок" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Привіт і ласкаво просимо до Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "Це приватний канал, на це вказує значок замка поруч із назвою каналу." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Приватні канали доступні лише його учасникам." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "Щоб керувати цим каналом, перейдіть до [налаштувань каналу]({stream_settings_url}) та клацніть на `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "Це повідомлення у каналі #**{default_notification_stream_name}** із темою `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Теми – це легкий інструмент для організації розмов." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "Ви можете дізнатися більше про теми на сторінці [канали та теми]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "Це повідомлення в каналі #**{default_notification_stream_name}** з темою `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4024,669 +4116,758 @@ msgstr "Неправильний JSON у відповіді" msgid "Invalid response format" msgstr "Неправильний формат відповіді" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Неправильна GCM опція для баунсера: пріоритет {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Неправильні GCM опції для баунсера: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Токен не існує" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} згадав вас:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} згадав усіх:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "Користувач не авторизований для цього запиту" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' більше не використовує Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Помилка баунсера для пуш повідомлень: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Неможливо визначитись між '{var_name1}' та '{var_name2}' аргументами" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Відсутній аргумент '{var_name}'" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Погане значення для '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Аргумент \"{}\" не є коректним JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Безпека облікового запису Zulip" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Лише адміністратори організації можуть надсилати в цей канал." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Лише адміністратори організації та модератори можуть надсилати в цей канал." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Гості не можуть надсилати в цей канал" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "Нові учасники не можуть надсилати до цього каналу." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Не авторизовано для відправлення в канал '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Будь ласка вкажіть 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Будь ласка оберіть один: 'stream' або 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Назву каналу '{}' вже прийнято." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Недійсне ім'я каналу '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Канал(и) ({}) не існує" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Групи основних каналів з ідентифікатором '{}' не існує." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Назва каналу занадто довга (обмеження: {} символів)." - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Дані підписника недоступні для цього каналу" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Не вдається отримати підписників для приватного каналу" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} не є логічним типом «bool»" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} не є датою" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} не є словником «dict»" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} не є дійсним «float» числом" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} не є цілим числом" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} не є списком «list»" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Недійсний {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} занадто довге (обмеження: {max_length} символів)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} не є рядком" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Завантаження перевищить квоту завантаження вашої організації." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Неможливо декодувати малюнок; ви завантажили файл малюнку?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Розмір малюнку перевищує встановлений ліміт." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Недійсна група користувачів" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Ім'я занадто довге!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Ім'я занадто коротке!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Недійсні символи в імені!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Недійсний формат!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Ім'я вже використовується!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Хибне ім'я або ім'я користувача" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Недійсна інтеграція '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Відсутні параметри конфігурації: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Неправильне {} значення {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Недійсні дані конфігурації!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Невірний тип бота" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Недійсний тип інтерфейсу" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Недійсний ID користувача: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Немає такого бота" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Немає такого користувача" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "Користувача деактивовано" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} не є рядком" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} не може бути порожнім." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Недійсний {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} занадто довге (обмеження: {max_length} символів)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} має неправильну довжину {length}; має бути {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} не є датою" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} не є цілим числом" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} не є дійсним «float» числом" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} не є логічним типом «bool»" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} не є коректним шістнадцятковим «hex» кодом кольору" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} не є списком «list»" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} повинен мати точно {length} елементів" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} не є словником «dict»" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} ключ відсутній у {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Неочікувані аргументи: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} не є дозволеним типом allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} невірне)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} не є URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' не може бути порожнім." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' не є правильним вибором для '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} не є рядком або списком цілих чисел" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} не є рядком або цілим числом" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Відсутній заголовок HTTP-події '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "Вебхук {} очікує час в мілісекундах." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "Повинен бути присутній слеш у zcommand. " -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "Немає такої команди: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "Помилка CSRF: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "події каналу" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Недійсні символи в назві емодзі" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Недійсні символи в мові pygments" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "Адміністратори, модератори, учасники та гості" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "Адміністратори, модератори та учасники" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "Адміністратори та модератори" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Лише адміністратори" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Ніхто" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Власник організації" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Адміністратор організації" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Модератор" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Учасник" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Гість" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Відкритий" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Приватна, спільна історія" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Приватна, захищена історія" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "Усі учасники каналу можуть робити публікації" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Тільки адміністратори організації можуть залишати повідомлення" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Тільки адміністратори та модератори організації можуть залишати повідомлення" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Лише повноправні учасники організації можуть залишати повідомлення" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Юнікод емодзі" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Власні емодзі" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Додаткова Zulip емодзі" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "Користувача з ідентифікатором {} деактивовано" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "Користувач з ідентифікатором {} є ботом" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "Список опцій" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Вибір людини" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Короткий текст" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Довгий текст" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Вибір дати" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Посилання" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "Зовнішній обліковий запис" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Невідома IP-адреса" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "невідома операційна система" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "Невідомий браузер" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Відсутній аргумент 'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Відсутній аргумент 'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "Подія, новіша за {event_id} уже була очищена!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Подія {event_id} була не в цій черзі" @@ -4754,89 +4935,123 @@ msgstr "Поле з цією позначкою вже існує." msgid "Default custom field cannot be updated." msgstr "Користувацьке поле за замовчуванням не можна оновити." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Кінцева точка не доступна у продакшині." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend не активовано." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Невідома точка доступу: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Ви повинні вказати щонайменше одну адресу електронної пошти." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Канал з ідентифікатором {} не існує. Запрошення не були відправлені." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Немає такого запрошення" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Історію редагування повідомлень у цій організації вимкнено" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "У вас немає дозволу для видалення цього повідомлення" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "Термін для видалення цього повідомлення минув" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Повідомлення вже видалене" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Запитано дуже багато повідомлень (максимум {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "Такої теми немає '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Відсутній відправник" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Віддзеркалення недозволене робити для ID отримувачів" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Помилкове віддзеркалене повідомлення" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Віддзеркалення Zephyr недозволене для цієї організації" @@ -4852,27 +5067,28 @@ msgstr "Користувача вже заглушено" msgid "User is not muted" msgstr "Користувача не заглушено" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Місцезнаходження не підтримується для користувачів-ботів." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "Немає даних про присутність для {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Клієнт не передав ніякі нові значення." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Недійсний статус: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4888,37 +5104,37 @@ msgid "" "emoji_code" msgstr "Принаймні один з наступних аргументів повинен бути присутнім: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Реакції не існує." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Недійсна мова '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "Необхідно ввімкнути принаймні один метод автентифікації." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Недійсний video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Недійсний giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Недійсний домен: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4930,42 +5146,43 @@ msgstr "Домен {domain} уже є частиною вашої організ msgid "No entry found for domain {domain}." msgstr "Не знайдено жодного запису для домену {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "Ви повинні завантажити рівно один файл." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Завантажений файл перевищує допустимий розмір {} МіБ" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Перевищив ліміт." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Запросіть ручний експорт з {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Недійсний ID експорту даних" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Експорт уже видалено" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4973,7 +5190,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "Ви повинні завантажити тільки одну іконку." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Лінкіфікатор не знайдений." @@ -4981,107 +5198,100 @@ msgstr "Лінкіфікатор не знайдений." msgid "You must upload exactly one logo." msgstr "Ви повинні завантажити тільки один логотип." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Помилковий майданчик" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "Користувач не має права виконувати запити від імені '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Приватні канали не можна зробити стандартними." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "Ви повинні передати \"new_description\" або \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Помилкове значення для \"op\". Вкажіть один з \"add\" або \"remove\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Стандартні канали не можна зробити приватними." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Канал вже має таке ім'я!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Нема чого робити. Вкажіть хоча б один \"add\" або \"delete\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} підписав вас на канал {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} підписав вас на наступні канали:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Не вдається отримати доступ до каналу ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "Ви можете запросити інших користувачів-міміків Zephyr тільки до приватних каналів." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} створив наступні канали: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} створив новий канал {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "нові канали" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Невідома властивість підписки: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Не підписаний на id каналу {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Помилковий json для частини повідомлення" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

Ви не маєте права переглядати цей файл.

" @@ -5097,97 +5307,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

Файл не знайдено.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Недійсний токен" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Недійсне ім'я файлу" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Ви повинні вказати файл для завантаження" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Ви можете завантажувати лише один файл за раз" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Немає нових даних" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "Користувач {user_id} вже є учасником цієї групи" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "У цій групі користувачів немає учасника '{}'" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Зміни аватару відключені для цієї організації." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Зміна електронної адреси в цій організації вимкнена." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Неправильний default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Недійсний звук сповіщення '{}'" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Ваш пароль Zulip керується в LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Неправильний пароль!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "Ви робите занадто багато спроб! Спробуйте ще раз через {} секунд." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "Новий пароль надто слабкий!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Ви повинні завантажити рівно один аватар." @@ -5234,6 +5455,10 @@ msgstr "Невірне ім'я вбудованого бота." msgid "Username already in use" msgstr "Ім'я користувача вже використовується" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5244,8 +5469,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "У цій організації не дозволяється використовувати одноразові електронні адреси" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Електронна пошта '{}' вже використовується" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5263,27 +5489,27 @@ msgstr "Недійсний ідентифікатор сесії Zoom" msgid "Invalid Zoom credentials" msgstr "Недійсні облікові дані Zoom" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Не вдалося створити виклик Zoom." -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5303,28 +5529,28 @@ msgstr "Недійсний кеш Kerberos" msgid "We were unable to set up mirroring for you" msgstr "Ми не змогли встановити віддзеркалення для Вас" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Помилковий вміст" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Невідомий вебхук запит" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Тема не може бути порожньою" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Вміст не може бути порожнім" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Помилково форматований вхідний JSON " @@ -5343,7 +5569,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5351,19 +5577,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Неможливо обробити вміст Pivotal" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Помилка: параметр channels_map_to_topics відрізняються від 0 чи 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Повідомлення від Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Невідома вебхук дія WordPress: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5380,47 +5607,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Повинен перевірити з правильним ключем API для Zulip сервера" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Недійсний тип токену" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} не є дійсним іменем хоста" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Недійсний параметр {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Дані невпорядковані." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Помилкові дані." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "Вам потрібно змінити Ваш пароль." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Відсутній параметр id_token" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Недійсний OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Неможливо використовувати mobile_flow_otp та desktop_flow_otp разом." diff --git a/locale/uk/translations.json b/locale/uk/translations.json index 404de72ee6..e9576a6e7a 100644 --- a/locale/uk/translations.json +++ b/locale/uk/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(приховано)", "(no description)": "(без опису)", "(no topic)": "(немає теми)", + "(or )": "", "(you)": "(Ви)", "({message_retention_days} days)": "({message_retention_days} днів)", "/dark (Switch to the dark theme)": "/dark (Перемкнути на темне оформлення)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "{name} не підписаний на цей канал. І не отримає сповіщення, хіба що ви підпишете його.", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "Клацніть тут, щоб дізнатися про експорт приватних каналів та повідомлень.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "Придбайте більше місця.", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "Додати сигнальне слово", "Add all users": "Додати всіх користувачів", "Add another user...": "Додати іншого користувача ...", + "Add audio call": "", "Add code playground": "Додати майданчик для коду", + "Add default streams": "", + "Add email": "", "Add emoji": "Додати емодзі", "Add emoji reaction": "Додати емодзі-реакцію", "Add extra emoji for members of the {realm_name} organization.": "Додайте додаткові емодзі для членів організації {realm_name}.", "Add global time": "Додати глобальний час", "Add linkifier": "Додати зв'язувач", "Add members": "Додати учасників", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "Додати учасника…", - "Add new default stream": "Додати новий основний канал", "Add new user group": "Додати нову групу користувачів", "Add one or more users": "Додати одного або декількох користувачів", "Add option": "Додати опцію", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Додавання підписників. Використовуйте групу користувачів або #ім'я потоку для масового додавання підписників.", "Add task": "Додати задачу", "Add video call": "Додати відеодзвінок", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "Додано успішно!", "Added successfully.": "Успішно додано.", "Administrator": "Адміністратор", @@ -124,6 +129,7 @@ "Alerted messages": "Сповіщення про небезпеку", "All": "Всі", "All direct messages": "", + "All groups": "", "All messages": "Усі повідомлення", "All messages including muted streams": "Усі повідомлення включно зі заглушеними каналами", "All streams": "Всі канали", @@ -136,9 +142,11 @@ "Allow subdomains": "Дозволити піддомени", "Allowed domains": "Дозволені домени", "Allowed domains: {domains}": "Дозволені домени: {domains}", + "Already members:": "", "Already not subscribed.": "Вже не підписано.", "Already subscribed to {stream}": "Підписка на {stream} уже активна", "Already subscribed users:": "Вже підписані користувачі:", + "Already subscribed.": "", "Always": "Завжди", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "Ключ API можна використовувати для програмного доступу до облікового запису Zulip. Будь-хто, що має доступ до вашого ключа API має можливість читати ваші повідомлення, надсилати повідомлення від вашого імені та іншим чином видавати себе за вас у Zulip, тому ви повинні захищати свій ключ API так само надійно, як бережете свій пароль.
Ми рекомендуємо створювати ботів, а також використовувати облікові записи ботів та API-ключі для доступу до API Zulip, хіба що задача вимагає доступу до вашого облікового запису.", "An hour ago": "Годину тому", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Архівувати канал", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Ви дійсно хочете створити канал ''''{stream_name}'''' та підписати {count} користувачів на нього?", "Are you sure you want to deactivate this organization?": "Ви впевнені що хочете деактивувати цю організацію?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "Ви дійсно хочете повторно надіслати запрошення для ?", "Are you sure you want to revoke the invitation to {email}?": "Ви дійсно хочете відкликати запрошення для {email}?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "Ви впевнені, що хочете відкликати посилання з запрошенням, створеним {referred_by}?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Ви дійсно хочете зняти зірочки з усіх повідомлень у ? Цю дію не можна скасувати.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Ви впевнені що хочете зняти зірочку зі всіх повідомлень що позначені зірочкою? Цю дію неможна буде відмінити.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "Аватар з Gravatar", "Back to streams": "Повернутись до каналів", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "Платежі", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "Тип бота", "Bots": "Боти", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "Якщо ви вимкнете свій обліковий запис, ви відразу ж вийдете.", @@ -218,6 +232,8 @@ "Click here to reveal.": "Клацніть сюди щоб показати.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Клацніть за вікном вводу, щоб зберегти. Ми автоматично сповістимо всіх користувачів, які були додані або видалені.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "Закрити", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "Завершити", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Створити повідомлення", "Compose your message here": "Пишіть своє повідомлення тут", "Compose your message here...": "Складіть своє повідомлення тут ...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "Конвертувати смайлики перед надсиланням (:) стає 😃)", "Cookie Bot": "Cookie бот", "Copied!": "Скопійовано!", + "Copy URL": "", "Copy address": "", "Copy and close": "Копіювати і закрити", "Copy code": "Копіювати код", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "Довільний", + "Custom URL": "", "Custom emoji": "Власні емодзі", "Custom language: {query}": "Довільна мова: {query}", "Custom linkifier added!": "Власний зв'язувач додано!", @@ -302,10 +320,12 @@ "Deactivated": "Деактивовано", "Deactivated users": "Деактивовані користувачі", "December": "Грудень", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Стандартно — {language}. Використовуйте 'text', щоб вимкнути підсвічування.", "Default language for code blocks": "", "Default streams": "Основні канали", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Стандартні налаштування для користувача", "Default view": "Стандартний вигляд", @@ -314,12 +334,14 @@ "Delete": "Видалити", "Delete alert word": "Видалити сигнальне слово", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "Видалити чернетку", "Delete file": "Видалити файл", "Delete file?": "", + "Delete group": "", "Delete icon": "Видалити піктограму", "Delete linkifier?": "", "Delete logo": "Видалити логотип", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "Залежно від розміру вашої організації, експорт може зайняти від секунди до години.", "Deprecation notice": "Повідомлення про зникнення", "Description": "Опис", + "Deselect draft": "", "Desktop": "Комп'ютер", "Desktop & mobile apps": "Настільні та мобільні додатки", "Desktop message notifications": "Сповіщення про повідомлення на комп'ютері", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Докладна документація щодо форматування повідомлень", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "Вимкнено", "Discard": "Скасувати", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "Налаштування показу", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "Домен", "Don’t allow disposable email addresses": "Не дозволяти одноразові адреси електронної пошти", "Download": "Завантажити", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Редагувати повідомлення", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Редагувати вибрану чернетку", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Редагувати останнє повідомлення", "Edit your profile": "Редагувати свій профіль", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "Відредаговано ({last_edit_timestr})", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Зовнішній тип облікового запису", "External link": "Зовнішнє посилання", "Failed": "Невдача", + "Failed adding one or more streams.": "", "Failed to create video call.": "Не вдалося створити відеодзвінок.", "Failed to generate preview": "Не вдалося створити попередній перегляд", "Failed to upload %'{file}'": "Не вдалося передати %'{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Фільтр експортів", "Filter groups": "", "Filter invites": "Фільтр запрошень", - "Filter languages": "Фільтр мов", "Filter linkifiers": "Фільтр Linkifier", "Filter members": "", "Filter muted users": "Фільтрувати заглушених користувачів", - "Filter roles": "", "Filter streams": "Фільтр каналів", "Filter subscribers": "", "Filter topics": "Фільтрувати теми", @@ -500,6 +523,9 @@ "First message": "Перше повідомлення", "First time? Read our guidelines for creating and naming streams.": "Вперше тут? Ознайомтеся з нашими рекомендаціями щодо створення та іменування каналів.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "Інтеграція GIPHY", "General": "Загальні", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Створити посилання-запрошення", "Generate new API key": "Створення нового ключа API", @@ -542,14 +569,18 @@ "High contrast mode": "Режим високої контрастності", "Hint": "Підказка", "Hint (up to 80 characters)": "Підказка (до 80 символів)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Люди", "Idle": "Неактивний", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "Зображення", "In a meeting": "", "Inactive": "", "Inactive bots": "Неактивні боти", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Включити вміст повідомлення в тіло електронного листа", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Вхідні вебхуки можуть надсилати лише повідомлення.", "Initiate a search": "Ініціювати пошук", "Insert new line": "Вставити нову лінійку", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Інтеграції", "Interface": "Інтерфейс", "Invalid URL": "Недійсний URL", @@ -581,6 +614,8 @@ "Inviting...": "Запрошення...", "Italic": "", "January": "Січень", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Приєднався", @@ -599,8 +634,10 @@ "Last 30 days": "Останні 30 днів", "Last 6 months": "Останні 6 місяців", "Last active": "Остання активність", + "Last edited {last_edit_timestr}": "", "Last message": "Останнє повідомлення", "Last modified": "Остання зміна", + "Last moved {last_edit_timestr}": "", "Learn more": "Дізнатися більше", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "Вийти", "Looking for our integrations or API documentation?": "Шукаєте нашу документацію з інтеграцій чи API?", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "Керування каналами", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "Згадано в", "Mentions": "Згадки", - "Menu": "Меню", "Menus": "Меню", "Message #{stream_name}": "Написати #{stream_name}", "Message #{stream_name} > {topic_name}": "Написати в #{stream_name} > {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Повідомлення {recipient_names}", "Message {recipient_name} ({recipient_status})": "Повідомлення {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Мобільні пристрої", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Перемістити тему", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "Заглушити канал", "Mute this user": "Заглушити цього користувача", "Mute topic": "Вимкнути сповіщення для теми", @@ -734,38 +773,42 @@ "New password is too weak": "Новий пароль заслабкий", "New stream announcements": "", "New stream message": "Нове повідомлення каналу", + "New stream notifications": "", "New task": "Нове завдання", "New topic": "Нова тема", "New user announcements": "", + "New user notifications": "", "Next message": "Наступне повідомлення", "Next unread direct message": "", "Next unread topic": "Наступна непрочитана тема", - "Next week": "Наступного тижня", "No bots match your current filter.": "Немає ботів, які відповідають поточному фільтру.", + "No conversations match your filters.": "", "No custom emoji.": "Немає спеціальних емодзі.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Немає основних каналів, що відповідають поточному фільтру.", "No description.": "Без опису.", + "No drafts selected": "", "No drafts.": "Немає чернеток.", "No exports.": "Експортів немає.", "No invites match your current filter.": "Жодні запрошення не відповідають поточному фільтру.", "No language set": "Мова не встановлена", "No linkifiers set.": "Немає встановлених зв'язувачів.", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "Немає власника", "No playgrounds configured.": "Немає зконфігурованих майданчиків.", "No restrictions": "Немає обмежень", "No scheduled messages.": "", - "No search results": "Нема результатів пошуку", "No search results.": "", "No stream subscriptions.": "", "No streams": "Немає каналів", "No topics are marked as resolved.": "", - "No topics match your current filter.": "Жодна тема не збігається з поточним фільтром.", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "Немає користувача для підписки.", "No users match your current filter.": "Жоден користувач не відповідає поточному фільтру.", + "No users to add.": "", "No, I'll catch up.": "Ні, я перечитаю.", "Nobody": "Ніхто", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Листопад", + "Numbered list": "", "October": "Жовтень", "Old password": "Старий пароль", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Лише учасники каналу можуть додавати користувачів до приватного каналу", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Відкрити", "Open message menu": "Відкрити меню повідомлень", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "Натисніть > для переліку тем", "Prevent users from changing their avatar": "Не дозволяти користувачам змінювати їх аватар", "Prevent users from changing their email address": "Не дозволяти користувачам змінювати свою адресу електронної пошти", @@ -869,6 +915,7 @@ "Previous message": "Попереднє повідомлення", "Privacy": "Приватність", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Приватна, захищена історія", "Private, shared history": "Приватна, спільна історія", "Profile": "Профіль", @@ -883,6 +930,7 @@ "Reactivate bot": "Повторно активувати бота", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Збережено як чернетку", "Saved. Please reload for the change to take effect.": "Збережено. Перезавантажте, щоб зміни набули чинності.", "Saving": "Збереження", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Дізнайтеся, як налаштувати електронну пошту.", "Select a stream": "", "Select a stream below or change topic name.": "Виберіть канал нижче або змініть назву теми.", - "Select date and time": "Вибрати дату та час", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "Відправити", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Надіслати дайджест на пошту, коли я не на місці", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Показувати попередній перегляд завантажених зображень та зображень в посиланнях", "Show starred message count": "Показати кількість повідомлень з зірочкою", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Показати/змінити ключ API", "Sign up": "Зареєструватися", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Сортувати за розрахунковим тижневим трафіком", "Sort by name": "Сортувати за назвою", "Sort by number of subscribers": "Сортувати за кількістю підписників", + "Sort by unread message count": "", "Spoiler": "Спойлер", "Star": "Зірка", "Star selected message": "Позначити вибране повідомлення", @@ -1024,8 +1080,10 @@ "Subscribe": "Підписатися", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "Підписатися/відписатися від вибраного каналу", + "Subscribe {full_name} to streams": "", "Subscribed": "Підписано", "Subscribed streams": "Підписані канали", + "Subscribed successfully!": "Підписано успішно!", "Subscriber count": "Кількість підписників", "Subscribers": "Підписники", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Наразі немає сигнальних слів.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Цей сервер працює на старій версії Zulip, його слід оновити.", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Ось як виглядає сповіщення Zulip.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Часовий пояс", "Time's up!": "Час вийшов!", "Tip: You can also send \"/poll Some question\"": "Порада: Ви можете також надіслати \"/poll якесь питання\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "Щоб додати підсвічування синтаксису до багаторядкового кодового блоку, спершу додайте коротку назву мови Pygments після першого набору зворотних апострофів. Ви також можете зробити блок коду, починаючи кожен рядок з 4 пробілів.", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "Сьогодні", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Переключити підписку", "Toggle the gear menu": "Перемикання механізму меню", "Toggle topic mute": "Важіль заглушити тему", - "Tomorrow": "Завтра", "Tomorrow at {time}": "", "Topic": "Тема", "Topic muted": "Тему заглушено", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Двохфакторна автентифікація", "Type": "Тип", + "URL": "URL", + "URL for your integration": "", "URL pattern": "Шаблон URL", - "URL prefix": "", "URL template": "", "USERS": "КОРИСТУВАЧІ", "Uncheck all": "Зняти позначки", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "Увімкнути сповіщення теми", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Відкріпити канал від верху", "Unread": "Непрочитані", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Огляд чернеток", - "View edit history": "Переглянути історію редагування", + "View edit and move history": "", "View file": "Переглянути файл", "View in playground": "", "View in {name}": "Переглянути в {name}", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "Середа", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Будь-які масові згадування, як-от @all, розглядаються як згадування з метою сповіщень.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Хто може отримати доступ до каналу?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Хто може створювати та керувати групами користувачів", "Who can create private streams": "Хто може створювати приватні канали", "Who can create public streams": "Хто може створювати відкриті канали", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Хто може створювати відкриті веб-канали", "Who can delete their own messages": "Хто може видаляти власні повідомлення", - "Who can invite users to this organization": "Хто може запрошувати користувачів до цієї організації", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Хто може надсилати повідомлення до каналу?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Хто може використовувати згадки @all/@everyone у великих каналах", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Ви і", "You and {display_reply_to}": "Ви та {display_reply_to}", "You and {recipients}": "Ви та {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Ви не підписані на цей канал.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "Ви використовуєте стару версію настільної програми Zulip із відомими помилками безпеки.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Ви не підписані на цей канал, і про це ще ніхто не говорив!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Ви також можете створювати таблиці за допомогою синтаксису таблиць Markdown.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "Ви не маєте дозволу на використання масових згадувань у цьому каналі.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Ви отримуєте", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Ви заглушили .", + "You have muted this topic": "", "You have no active bots.": "У вас немає активних ботів.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Ви ще не заглушили жодного користувача.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Ви не завантажили жодного файлу.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Тут Вас ще ніхто не згадував!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Щоб створити канал без підписки, ви повинні бути адміністратором організації.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Для того, щоб надсилати повідомлення, вам потрібно використовувати дзеркалювання Zephyr!", "You searched for:": "Ви шукали:", "You subscribed to stream ": "", "You type": "Ви пишете", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Ви не підписані на цей канал. Ви не отримаєте сповіщення, якщо інші користувачі відповідатимуть на ваше повідомлення.", "Your API key:": "Ваш ключ API:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip необхідно відправляти електронні листи, щоб підтвердити адреси користувачів та надсилати сповіщення.", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[Налаштувати]", - "[Disable]": "[Вимкнути]", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "[Зняти]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "бета", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "через 1 годину", - "in 20 minutes": "через 20 хвилин", - "in 3 hours": "через 3 години", "invisible mode off": "", "leafy green vegetable": "листовий зелений овоч", "marketing": "маркетинг", "more conversations": "більше розмов", "more topics": "більше тем", - "or": "або", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, one {} few {} many {} other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} днів тому", "{full_name} is typing…": "{full_name} пише…", "{hours} hours ago": "{hours} годин тому", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, one {} few {} many {} other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} хв для редагування", "{minutes} minutes ago": "{minutes} хвилин тому", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, one {} few {} many {} other {}}", "{seconds} sec to edit": "{seconds} сек для редагування", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [сказав]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} поставив {emoji_name}" diff --git a/locale/vi/LC_MESSAGES/django.po b/locale/vi/LC_MESSAGES/django.po index 9b8369ae41..bf575b8f4c 100644 --- a/locale/vi/LC_MESSAGES/django.po +++ b/locale/vi/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Gyver Chang, 2022\n" "Language-Team: Vietnamese (http://app.transifex.com/zulip/zulip/language/vi/)\n" @@ -21,46 +21,47 @@ msgstr "" "Language: vi\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "Nhóm đã ngừng hoạt động" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "Thời gian bắt đầu muộn hơn thời gian kết thúc. Start: {start}, End: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "Không có sẵn dữ liệu phân tích. Vui lòng liên hệ với quản trị viên máy chủ của bạn." -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -121,29 +122,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "Đã xảy ra lỗi. Vui lòng liên hệ {email}" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "Thao tác gửi lại bị lỗi. Xin tải lại trang và thử lần nữa." -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "Đã xảy ra lỗi. Vui lòng đợi vài giây và thử lại." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -175,7 +178,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -191,14 +194,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -210,7 +213,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -260,7 +263,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "Lỗi server nội bộ" @@ -562,9 +565,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -582,9 +585,9 @@ msgstr "View pricing" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "Self-host Zulip" @@ -594,9 +597,9 @@ msgstr "Self-host Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "Request sponsorship" @@ -859,51 +862,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "Đăng ký sử dụng với %(identity_provider)s" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "Cảm ơn bạn đã đăng ký tài khoản !" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "Vẫn không nhận được email? Chúng tôi có thể gửi lại ." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "Để cho chắc thì hãy thử kiểm tra hòm thư rác của bạn nhé." - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "Cập nhật có thể bị trì hoãn." -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "Thử ngay và luôn." -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "" @@ -1151,6 +1154,159 @@ msgstr "Người dùng thường" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "Welcome to Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "Organization URL: %(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "Use your LDAP account to log in" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "%(realm_name)s on Zulip: Your new organization details" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "%(realm_name)s on Zulip: Your new account details" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "You've joined the Zulip organization %(realm_name)s." + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1158,6 +1314,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "If you did not request this change, please contact us immediately at %(support_email)s." + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "If you did not request this change, please contact us immediately at <%(support_email)s>." + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1171,23 +1360,10 @@ msgstr "" msgid "Confirm email change" msgstr "Confirm email change" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "If you did not request this change, please contact us immediately at %(support_email)s." - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "Verify your new email address" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "If you did not request this change, please contact us immediately at <%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1241,17 +1417,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1356,225 +1521,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "Your email address %(email)s has accounts with the following Zulip organizations hosted by %(external_host)s:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "Welcome to Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "Organization URL: %(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "Use your LDAP account to log in" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "%(realm_name)s on Zulip: Your new organization details" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "%(realm_name)s on Zulip: Your new account details" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "You've joined the Zulip organization %(realm_name)s." - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "Examples of short topics" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "Tới Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1659,14 +1605,14 @@ msgstr "This invitation expires in two days. If the invitation expires, you'll n #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1698,21 +1644,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1720,21 +1690,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1777,29 +1747,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\nThis email does not include message content because you have disabled message content appearing in email notifications.\nSee %(alert_notif_url)s for more details.\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\nDo not reply to this email. This Zulip server is not configured to accept\nincoming emails. Help:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "Manage email preferences: " @@ -1962,6 +1932,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1990,6 +1968,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "Examples of short topics" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "Tới Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2378,7 +2428,7 @@ msgid "Incoming webhooks" msgstr "Incoming webhooks" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "Interactive bots" @@ -2878,292 +2928,295 @@ msgid "" " " msgstr "\n You can also use the Zulip desktop app.\n " -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "signups" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} just signed up for Zulip. (total: {user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} accepted your invitation to join Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "Invalid order mapping." -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "Field id {id} not found." -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' is a default stream and cannot be added to '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "Default stream group '{group_name}' already exists" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "Stream '{stream_name}' is already present in default stream group '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "Stream '{stream_name}' is not present in default stream group '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "Default stream group '{}' already exists" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "To protect users, Zulip limits the number of invitations you can send in one day. Because you have reached the limit, no invitations were sent." -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "Your account is too new to send invites for this organization. Ask an organization admin, or a more experienced user." -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "Một số tài khoản email chưa xác nhận nên chúng tôi không thể gửi lời mời." -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "Chúng tôi không thể mời ai." -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "Một số địa chỉ đã lập tài khoản Zulip nên chúng tôi không gửi lời mời. Chúng tôi đã gửi lời mời tới tất cả những người khác." -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "Không có gì để thay đổi" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "Invalid propagate_mode without topic edit" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "Cannot change message content while changing stream" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "Widgets cannot be edited." -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} has marked this topic as resolved." -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} has marked this topic as unresolved." -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "This topic was moved to {new_location} by {user}." -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "A message was moved from this topic to {new_location} by {user}." -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} messages were moved from this topic to {new_location} by {user}." -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "This topic was moved here from {old_location} by {user}." -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} messages were moved here from {old_location} by {user}." -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "Your organization has turned off message editing" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "Bạn không được cho phép chỉnh sửa tinh nhắn này" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "The time limit for editing this message has passed" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "You do not have permission to use wildcard mentions in this stream." -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "You don't have permission to move this message" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "You don't have permission to move this message due to missing access to its stream" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "Tin nhắn không hợp lệ" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "Không thể chuẩn bị tin nhắn" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "Expected exactly one stream" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "Invalid data type for stream" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "Invalid data type for recipients" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "Recipient lists may contain emails or user IDs, but not both." -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, but there is no stream with that ID." -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "Your bot {bot_identity} tried to send a message to stream {stream_name}, but that stream does not exist. Click [here]({new_stream_link}) to create it." -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "Your bot {bot_identity} tried to send a message to stream {stream_name}. The stream exists but does not have any subscribers." -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "Topics are required in this organization" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "Widgets: API programmer sent invalid JSON content" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "Widgets: {error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "Reaction already exists." - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3177,8 +3230,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3197,18 +3250,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} changed the [access permissions](/help/stream-permissions) for this stream from **{old_policy}** to **{new_policy}**." -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3217,38 +3284,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n\n* **Old permissions**: {old_policy}.\n* **New permissions**: {new_policy}.\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} renamed stream {old_stream_name} to {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "No description." -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} changed the description for this stream." -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "Old description" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "New description" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "Forever" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "Messages in this stream will now be retained forever." -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3258,56 +3325,59 @@ msgid "" "{summary_line}" msgstr "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n* **Old retention period**: {old_retention_period}\n* **New retention period**: {new_retention_period}\n\n{summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "You cannot attach a submessage to this message." #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "This API is not available to incoming webhook bots." -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "Tài khoản không liên kết với miền con" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "This endpoint does not accept bot requests." -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "Must be an server administrator" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "Thiếu sự cho phép" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "This endpoint requires HTTP basic authentication." -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "Invalid authorization header for basic auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "Missing authorization header for basic auth" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook bots chỉ có thể truy cập webhook" @@ -3322,95 +3392,101 @@ msgstr "Your account {username} has been deactivated. Please contact your organi msgid "The password is too weak." msgstr "The password is too weak." -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "Subdomain needs to have length 3 or greater." -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "Subdomain cannot start or end with a '-'." -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "Subdomain can only have lowercase letters, numbers, and '-'s." -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "Xin hãy sử dụng địa chỉ email thật." -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "The organization you are trying to join using {email} does not exist." -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "Please request an invite for {email} from the organization administrator." -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "Your email address, {email}, is not in one of the domains that are allowed to register for accounts in this organization." -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "Email addresses containing + are not allowed in this organization." -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "New members cannot join this organization because all Zulip licenses are in use. Please contact the person who invited you and ask them to increase the number of licenses, then try again." -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "New password" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "New password confirmation" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "You're making too many attempts to sign in. Try again in {} seconds or contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "Your password has been disabled because it is too weak. Reset your password to create a new one." -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "Token" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "Please enter at most 10 emails." -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "We couldn't find that Zulip organization." #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3474,31 +3550,31 @@ msgstr "Subdomains cannot start or end with a '-'." msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "Domain can only have letters, numbers, '.' and '-'s." -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "Timestamp must not be negative." -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "Topic must not contain null bytes" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "Must specify exactly 1 stream ID for stream messages" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "User has disabled synchronizing drafts." -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "Draft does not exist" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "Open Zulip to see the spoiler content" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "Zulip notifications" @@ -3531,166 +3607,166 @@ msgstr "Đã có tài khoản." msgid "Account has been deactivated." msgstr "Account has been deactivated." -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "Invalid custom emoji." -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "Invalid custom emoji name." -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "This custom emoji has been deactivated." -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "Invalid emoji code." -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "Invalid emoji name." -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "Kiểu emoji không hợp lệ." -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "Must be an organization administrator or emoji author" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "Emoji name is missing" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "Could not allocate event queue" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "Not logged in: API authentication or user session required" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "Stream '{stream}' does not exist" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "Stream with ID '{stream_id}' does not exist" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "organization owner" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "user" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "Cannot deactivate the only {entity}." -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "Invalid Markdown include statement: {include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API usage exceeded rate limit" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "Malformed JSON" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "Must be an organization member" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "Must be an organization administrator" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "Must be an organization owner" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "Your username or password is incorrect" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "Account is deactivated" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "This organization has been deactivated" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "The mobile push notification service registration for your server has been deactivated" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "Password authentication is disabled in this organization" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "Your password has been disabled and needs to be reset" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "Mã API không hợp lệ" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Malformed API key" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "The '{event_type}' event isn't currently supported by the {webhook_name} webhook" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "Unable to parse request: Did {webhook_name} generate this event?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "Invalid subdomain" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "Từ chối truy cập" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3698,6 +3774,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "Reaction already exists." + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "Reaction doesn't exist." + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3739,8 +3823,8 @@ msgid "Settings" msgstr "Cài đặt" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3752,264 +3836,272 @@ msgid "" "and give it a go!" msgstr "Click here to start a new conversation. Pick a topic (2-3 words is best), and give it a go!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "Integration frameworks" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "Continuous integration" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "Customer support" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "Deployment" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "Entertainment" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "Communication" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "Financial" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "Marketing" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "Miscellaneous" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "Project management" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "Productivity" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "Version control" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "Tin nhắn không được để trống" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "Message must not contain null bytes" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "Invalid narrow operator: {desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "Missing 'anchor' argument." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "Invalid anchor" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "If you are new to Zulip, check out our [Getting started guide]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "Hello, and welcome to Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "I can also help you get set up! Just click anywhere on this message or press `r` to reply." -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "Here are a few messages I understand:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "Go to [Profile settings](#settings/profile) to add a [profile picture](/help/change-your-profile-picture) and edit your [profile information](/help/edit-your-profile)." -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "Go to [Display settings](#settings/display-settings) to [switch between the light and dark themes](/help/dark-theme), [pick your favorite emoji theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your language](/help/change-your-language), and make other tweaks to your Zulip experience." +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "In Zulip, streams [determine who gets a message](/help/streams-and-topics). They are similar to channels in other chat apps." -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[Browse and subscribe to streams](#streams/all)." -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "In Zulip, topics [tell you what a message is about](/help/streams-and-topics). They are light-weight subjects, very similar to the subject line of an email." -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app quickly and efficiently." -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip uses [Markdown](/help/format-your-message-using-markdown), an intuitive format for **bold**, *italics*, bulleted lists, and more. Click [here](#message-formatting) for a cheat sheet." -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "Check out our [messaging tips](/help/messaging-tips) to learn about emoji reactions, code blocks and much more!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "Check out our [Getting started guide](/help/getting-started-with-zulip), or browse the [Help center](/help/) to learn more!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "I’m sorry, I did not understand your message. Please try one of the following commands:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "This is a private stream, as indicated by the lock icon next to the stream name." -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "Private streams are only visible to stream members." -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "To manage this stream, go to [Stream settings]({stream_settings_url}) and click on `{initial_private_stream_name}`." -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "This is a message on stream #**{default_notification_stream_name}** with the topic `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "Topics are a lightweight tool to keep conversations organized." -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "You can learn more about topics at [Streams and topics]({about_topics_help_url})." -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "This is a message on stream #**{default_notification_stream_name}** with the topic `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4024,669 +4116,758 @@ msgstr "Invalid JSON in response" msgid "Invalid response format" msgstr "Invalid response format" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token không tồn tại" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "This organization has disabled including message content in mobile push notifications" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} mentioned @{user_group_name}:" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} mentioned you:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} mentioned everyone:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "User not authorized for this query" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' is no longer using Zulip." -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "Can't decide between '{var_name1}' and '{var_name2}' arguments" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "Missing '{var_name}' argument" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "Bad value for '{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "Malformed payload" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip Account Security" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "Only organization administrators can send to this stream." -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "Only organization administrators and moderators can send to this stream." -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "Guests cannot send to this stream." -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "New members cannot send to this stream." -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "Please supply 'stream'." -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "Please choose one: 'stream' or 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "Web-public streams are not enabled." -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "Stream name can't be empty!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "Topic can't be empty!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "Subscriber data is not available for this stream" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "Unable to retrieve subscribers for private stream" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} is not a boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} is not a date" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} is not a dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} is not a float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} is too small" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} is not an integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} is too large" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} is not a list" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "Invalid {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} is too long (limit: {max_length} characters)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} is not a string" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "Upload would exceed your organization's upload quota." -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "Could not decode image; did you upload an image file?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "Image size exceeds limit." -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "Corrupt animated image." -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "Unknown animated image format." -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "Invalid user group" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "Tên quá dài!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "Name too short!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "Invalid characters in name!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "Invalid format!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "Name is already in use!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "Tên hoặc tên tài khoản không ổn" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "Invalid configuration data!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "Invalid bot type" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "Invalid interface type" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "Không tìm thấy bot" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "Không tìm thấy người dùng" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "User is deactivated" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} is not a string" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} cannot be blank." -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "Invalid {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} is too long (limit: {max_length} characters)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} has incorrect length {length}; should be {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} is not a date" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} is not an integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} is too small" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} is too large" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} is not a float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} is not a boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} is not a valid hex color code" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} is not a list" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} should have exactly {length} items" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} is not a dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{key_name} key is missing from {var_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} is not an allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} is wrong)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} is not a URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' cannot be blank." -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' is not a valid choice for '{field_name}'." -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} is not a string or an integer list" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} is not a string or integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} does not have a length" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} is missing" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "Missing the HTTP event header '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "There should be a leading slash in the zcommand." -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF error: {reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "stream events" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "Available on Zulip Cloud Standard. Upgrade to access." -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "Invalid characters in emoji name" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "Unknown regular expression error" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "Invalid characters in pygments language" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "Dành riêng cho Admin" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "Không ai" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "Organization owner" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "Organization administrator" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "Moderator" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "Member" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "Guest" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "Web-public" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "Công cộng" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "Private, shared history" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "Private, protected history" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "Public, protected history" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "All stream members can post" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "Only organization administrators can post" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "Only organization administrators and moderators can post" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "Only organization full members can post" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode emoji" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "Custom emoji" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip extra emoji" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "List of options" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "Person picker" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "Short text" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "Long text" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "Date picker" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "Link" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "External account" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "Unknown IP address" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "an unknown operating system" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "An unknown browser" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "Missing 'queue_id' argument" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "Missing 'last_event_id' argument" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "An event newer than {event_id} has already been pruned!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "Event {event_id} was not in this queue" @@ -4754,89 +4935,123 @@ msgstr "A field with that label already exists." msgid "Default custom field cannot be updated." msgstr "Default custom field cannot be updated." -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "Endpoint not available in production." -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "DevAuthBackend not enabled." -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "Bạn phải chọn ít nhất một địa chỉ email." -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "Stream does not exist with id: {}. No invites were sent." - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "Không có lời mời như vậy" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "Message edit history is disabled in this organization" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "You don't have permission to delete this message" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "The time limit for deleting this message has passed" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "Message already deleted" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "Thiếu người gửi" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mirroring not allowed with recipient user IDs" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "Invalid mirrored message" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "Zephyr mirroring is not allowed in this organization" @@ -4852,27 +5067,28 @@ msgstr "User already muted" msgid "User is not muted" msgstr "User is not muted" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "Presence is not supported for bot users." -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "No presence data for {user_id_or_email}" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "Client did not pass any new values." -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "Client must pass emoji_name if they pass either emoji_code or reaction_type." -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4888,37 +5104,37 @@ msgid "" "emoji_code" msgstr "At least one of the following arguments must be present: emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "Reaction doesn't exist." - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "At least one authentication method must be enabled." -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "Must be a demo organization." #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4930,42 +5146,43 @@ msgstr "The domain {domain} is already a part of your organization." msgid "No entry found for domain {domain}." msgstr "No entry found for domain {domain}." -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "You must upload exactly one file." -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "Exceeded rate limit." -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "Please request a manual export from {email}." -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "Invalid data export ID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "Export already deleted" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4973,7 +5190,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "You must upload exactly one icon." -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "Linkifier not found." @@ -4981,107 +5198,100 @@ msgstr "Linkifier not found." msgid "You must upload exactly one logo." msgstr "You must upload exactly one logo." -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "Invalid playground" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "User not authorized to execute queries on behalf of '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "Private streams cannot be made default." -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "You must pass \"new_description\" or \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "Giá trị \"op\" không hợp lệ. Chọn \"thêm\" hoặc\"xóa\"." -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "Default streams cannot be made private." - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "Stream already has that name!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "Không có gì để thực hiện. Chọn \"Thêm\" hoặc \"Xóa\"." -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} subscribed you to the stream {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} subscribed you to the following streams:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "Unable to access stream ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "You can only invite other Zephyr mirroring users to private streams." -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} created the following streams: {stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} created a new stream {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "new streams" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** stream created by {user_name}. **Description:**" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "Invalid json for submessage" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

You are not authorized to view this file.

" @@ -5097,97 +5307,108 @@ msgstr "User has disabled typing notifications for stream messages" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "Invalid token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "Invalid filename" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "Bạn phải chọn file để gửi lên" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "Bạn chỉ có thể gửi lên từng file một" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "Không bổ sung thông tin mới" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "User {user_id} is already a member of this group" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "Avatar changes are disabled in this organization." -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "Email address changes are disabled in this organization." -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "Invalid default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "Your Zulip password is managed in LDAP" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "Sai mật khẩu!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "New password is too weak!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "Bạn phải tải lên duy nhất một ảnh avatar." @@ -5234,6 +5455,10 @@ msgstr "Invalid embedded bot name." msgid "Username already in use" msgstr "Tên tài khoản đã được sử dụng" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5244,8 +5469,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "Disposable email addresses are not allowed in this organization" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5263,27 +5489,27 @@ msgstr "Invalid Zoom session identifier" msgid "Invalid Zoom credentials" msgstr "Invalid Zoom credentials" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "Failed to create Zoom call" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton is not configured." -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "Invalid signature." -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "Error connecting to the BigBlueButton server." -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "Error authenticating to the BigBlueButton server." -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton server returned an unexpected error." @@ -5303,28 +5529,28 @@ msgstr "Invalid Kerberos cache" msgid "We were unable to set up mirroring for you" msgstr "We were unable to set up mirroring for you" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "Invalid payload" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "Unknown webhook request" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "Chủ đề không được để trống" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "Nội dung không thể để trống" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "Malformed JSON input" @@ -5343,7 +5569,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5351,19 +5577,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "Unable to handle Pivotal payload" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "Error: channels_map_to_topics parameter other than 0 or 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "Message from Slack" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5380,47 +5607,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "Must validate with valid Zulip server API key" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "Invalid UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "Invalid token type" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "Missing user_id or user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "Data is out of order." -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "Invalid data." -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "You need to reset your password." -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "Missing id_token parameter" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "Invalid OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "Can't use both mobile_flow_otp and desktop_flow_otp together." diff --git a/locale/vi/translations.json b/locale/vi/translations.json index d216afbb5f..13cf1663f1 100644 --- a/locale/vi/translations.json +++ b/locale/vi/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "(no topic)", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "Đăng Ký", - "Click here to learn about exporting private streams and messages.": "Nhấp vào đây để tìm hiểu về cách xuất stream và tin nhắn riêng tư.", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "", + "Add audio call": "", "Add code playground": "Thêm mã playground", + "Add default streams": "", + "Add email": "", "Add emoji": "", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "Thêm Stream mặc định mới", "Add new user group": "", "Add one or more users": "Thêm một hoặc nhiều người dùng", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "Thêm người đăng ký. Sử dụng usergroup hoặc #tencuastream để thêm người đăng ký số lượng lớn.", "Add task": "", "Add video call": "Thêm cuộc gọi video", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "Tất cả", "All direct messages": "", + "All groups": "", "All messages": "Tất cả tin nhắn", "All messages including muted streams": "Tất cả tin nhắn bao gồm cả Stream bị tắt tiếng", "All streams": "Tất cả các dòng hội thoại", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "Chưa tham gia", "Already subscribed to {stream}": "Đã tham gia{stream}", "Already subscribed users:": "Người dùng đã tham gia:", + "Already subscribed.": "", "Always": "Luôn luôn", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "Lưu trữ stream", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "Bạn có chắc chắn muốn tạo Stream '' '' {stream_name} '' '' và đăng ký {count} người dùng vào Stream đó không?", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "Bạn có chắc chắn muốn bỏ gắn dấu sao trong tất cả các thư không ? Hành động này không thể được khôi phục lại.", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "Bạn có chắc chắn muốn bỏ gắn dấu sao tất cả các tin nhắn được gắn dấu sao không? Hành động này không thể được khôi phục lại.", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "Quay lại Stream", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "Duyệt qua các stream", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "Business", "Busy": "Đang bận", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "Nhấn vào đây để xem tiết lộ.", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "Nhấp vào bên ngoài khung nhập liệu để lưu. Chúng tôi sẽ tự động thông báo cho bất kỳ ai được thêm hoặc xóa.", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "Bấm để xem hoặc tải xuống", "Close": "Tắt", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "Đang di chuyển", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "Viết tin nhắn", "Compose your message here": "Viết tin nhắn ở đây", "Compose your message here...": "Soạn tin nhắn của bạn tại đây...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "Hiện đang xem tất cả các tin nhắn.", "Currently viewing the entire stream.": "Hiện đang xem toàn bộ stream.", "Custom": "Tùy chỉnh", + "Custom URL": "", "Custom emoji": "Custom emoji", "Custom language: {query}": "Tùy chỉnh ngôn ngữ: {query}", "Custom linkifier added!": "Tùy chỉnh trình liên kết đã thêm!", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "Người dùng đã dừng hoạt động", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "Mặc định là {language}. Sử dụng 'văn bản' để tắt đánh dấu.", "Default language for code blocks": "", "Default streams": "Stream mặc định", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "Cài đặt mặc định người dùng", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Xóa", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "Mô tả", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "Ứng dụng máy tính & điện thoại", "Desktop message notifications": "Thông báo tin nhắn trên màn hình", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "Tài liệu chi tiết định dạng tin nhắn ", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "", "Discard": "Loại bỏ", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "Tải xuống", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "Chỉnh sửa tin nhắn", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "Chỉnh sử bản nháp được chọn", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "Chỉnh sửa tin nhắn cuối cùng của bạn", "Edit your profile": "Chỉnh sửa hồ sơ của bạn", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "Loại tài khoản bên ngoài", "External link": "Liên kết bên ngoài", "Failed": "Thất bại", + "Failed adding one or more streams.": "", "Failed to create video call.": "Không tạo được cuộc gọi điện video.", "Failed to generate preview": "Không tạo được bản xem trước", "Failed to upload %'{file}'": "Không tải lên được% '{file}'", @@ -485,11 +510,9 @@ "Filter exports": "Lọc xuất ", "Filter groups": "", "Filter invites": "Lọc lời mời", - "Filter languages": "Lọc ngôn ngữ", "Filter linkifiers": "Lọc trình liên kết", "Filter members": "", "Filter muted users": "Lọc người dụng bị ẩn", - "Filter roles": "", "Filter streams": "Lọc Stream", "Filter subscribers": "Lọc người đăng ký", "Filter topics": "Lọc chủ đề", @@ -500,6 +523,9 @@ "First message": "Tin nhắn đầu tiên", "First time? Read our guidelines for creating and naming streams.": "Điều đầu tiên? Đọc các nguyên tắc của chúng tôi để tạo và đặt tên cho các Streams.", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "Phân bổ GIPHY", "GIPHY integration": "Tích hợp GIPHY", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "Tạo liên kết mời", "Generate new API key": "Tạo khóa API mới", @@ -542,14 +569,18 @@ "High contrast mode": "Chế độ tương phản cao", "Hint": "Dấu", "Hint (up to 80 characters)": "Gợi ý (tối đa 80 ký tự)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "Con người", "Idle": "Đang nhàn rỗi", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "Người dùng đã hủy kích hoạt bị bỏ qua:", "Image": "Hình ảnh", "In a meeting": "Đang họp", "Inactive": "Không hoạt động", "Inactive bots": "Các bot không hoạt động", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "Bao gồm nội dung tin nhắn trong email thông báo tin nhắn", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Webhook đến chỉ có thể gửi tin nhắn.", "Initiate a search": "Bắt đầu tìm kiếm", "Insert new line": "Thêm dòng mới", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "Hợp nhất", "Interface": "Giao diện", "Invalid URL": "URL không hợp lệ", @@ -581,6 +614,8 @@ "Inviting...": "Đang mời...", "Italic": "In nghiêng", "January": "Tháng 1", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "Đã tham gia", @@ -599,8 +634,10 @@ "Last 30 days": "Last 30 days", "Last 6 months": "6 tháng trước", "Last active": "Hoạt động lần cuối", + "Last edited {last_edit_timestr}": "", "Last message": "Tin nhắn gần đây nhất", "Last modified": "Sửa đổi lần cuối", + "Last moved {last_edit_timestr}": "", "Learn more": "Tìm hiểu thêm", "Learn more about mentions here.": "Tìm hiểu thêm về các đề cập tại đây.", "Learn more about starring messages here.": "Tìm hiểu thêm về gắn dấu sao tin nhắn tại đây.", @@ -623,6 +660,7 @@ "Log out": "Đăng xuất", "Looking for our integrations or API documentation?": "Tìm kiếm các tích hợp hoặc tài liệu API của chúng tôi?", "MOVED": "ĐÃ CHUYỂN ĐI", + "Main menu": "", "Manage bot": "", "Manage streams": "Quản lý Streams", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "Đề cập đến thời gian nhận biết múi giờ", "Mentioned in": "Đề cập trong", "Mentions": "Đề cập", - "Menu": "Thực đơn", "Menus": "Thực đơn", "Message #{stream_name}": "Nhắn tin # {stream_name}", "Message #{stream_name} > {topic_name}": "Tin nhắn # {stream_name}> {topic_name}", @@ -662,6 +699,8 @@ "Message {recipient_names}": "Nhắn tin cho {receiver_names}", "Message {recipient_name} ({recipient_status})": "Nhắn tin cho {accept_name} ({accept_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "Điện thoại", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "Di chuyển chủ đề", - "Moved ({last_edit_timestr})": "Đã di chuyển ({last_edit_timestr})", "Moved by {full_name}": "Được chuyển bởi {full_name}", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "Phải được mời bởi một người đăng ký; người đăng ký mới chỉ có thể xem tin nhắn được gửi sau khi họ tham gia; ẩn khỏi người dùng không phải quản trị viên", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "Phải được mời bởi một người đăng ký; người đăng ký mới có thể xem toàn bộ lịch sử tin nhắn; ẩn khỏi người dùng không phải quản trị viên", + "Mute": "", "Mute stream": "Ẩn stream", "Mute this user": "Tắt tiếng người dùng này", "Mute topic": "Ẩn topic", @@ -734,38 +773,42 @@ "New password is too weak": "Mật khẩu mới quá yếu", "New stream announcements": "", "New stream message": "Tin nhắn mới trên hội", + "New stream notifications": "Thông báo Stream mới", "New task": "Nhiệm vụ mới", "New topic": "Chủ đề mới", "New user announcements": "", + "New user notifications": "Thông báo người dùng mới", "Next message": "Tin nhắn tiếp theo", "Next unread direct message": "", "Next unread topic": "Chủ đề chưa đọc tiếp theo", - "Next week": "Tuần sau", "No bots match your current filter.": "Không có bot nào phù hợp với bộ lọc hiện tại của bạn.", + "No conversations match your filters.": "", "No custom emoji.": "Không có biểu tượng cảm xúc tùy chỉnh.", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "Không có luồng mặc định nào phù hợp với bộ lọc hiện tại của bạn.", "No description.": "No description.", + "No drafts selected": "", "No drafts.": "Không có bản nháp.", "No exports.": "Không có hàng xuất khẩu.", "No invites match your current filter.": "Không có lời mời nào phù hợp với bộ lọc của bạn.", "No language set": "Không có ngôn ngữ nào được đặt", "No linkifiers set.": "Không có công cụ liên kết nào được đặt.", + "No matching results": "", "No matching users.": "Không có người dùng phù hợp.", "No one has read this message yet.": "Chưa có ai đọc tin nhắn này.", "No owner": "Không có chủ sở hữu", "No playgrounds configured.": "Không có sân chơi nào được định cấu hình.", "No restrictions": "Không có hạn chế", "No scheduled messages.": "", - "No search results": "Không có kết quả tìm kiếm", "No search results.": "", "No stream subscriptions.": "Không có đăng ký luồng.", "No streams": "Không có Streams", "No topics are marked as resolved.": "Không có chủ đề nào được đánh dấu là đã giải quyết.", - "No topics match your current filter.": "Không có chủ đề nào phù hợp với bộ lọc hiện tại của bạn.", "No user group subscriptions.": "Không có đăng ký nhóm người dùng.", "No user groups": "", "No user to subscribe.": "Không có người dùng để đăng ký.", "No users match your current filter.": "Không tìm thấy người dùng theo bộ lọc của bạn", + "No users to add.": "", "No, I'll catch up.": "Không, tôi sẽ tự đọc hết.", "Nobody": "Không ai", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "Tháng 11", + "Numbered list": "", "October": "Tháng 8", "Old password": "Mật khẩu củ", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "Chỉ thành viên Stream mới có thể thêm người dùng vào Stream riêng tư", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "Mở", "Open message menu": "Mở thực đơn tin nhắn", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "Được đăng bởi {full_name}", + "Preferences": "", "Press > for list of topics": "Nhấn > để xem danh sách các chủ đề", "Prevent users from changing their avatar": "Ngăn người dùng thay đổi avatar cá nhân", "Prevent users from changing their email address": "Ngăn người dùng thay đổi địa chỉ email", @@ -869,6 +915,7 @@ "Previous message": "Tin nhắn trước đó", "Privacy": "Bảo mật", "Privacy settings": "Thiết lập riêng tư", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "Private, protected history", "Private, shared history": "Private, shared history", "Profile": "Hồ sơ", @@ -883,6 +930,7 @@ "Reactivate bot": "Kích hoạt lại bot", "Reactivate this bot": "", "Reactivate this user": "Kích hoạt lại người dùng này", + "Reactivate user": "", "Reactivate {name}": "Kích hoạt lại {name}", "Read receipts": "Biên nhận Đã đọc", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "Lưu nháp", "Saved. Please reload for the change to take effect.": "Đã lưu. Vui lòng tải lại để thay đổi có hiệu lực.", "Saving": "Đang lưu", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "Xem cách định cấu hình email.", "Select a stream": "", "Select a stream below or change topic name.": "Chọn một Stream bên dưới hoặc thay đổi tên chủ đề.", - "Select date and time": "Chọn ngày và giờ", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "Chọn biểu tượng cảm xúc", "Select language": "", + "Select stream": "", "Send": "Gửi", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "Gửi email thông báo khi tôi đi vắng", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "Hiển thị bản xem trước của hình ảnh được tải lên và liên kết", "Show starred message count": "Hiển thị số lượng tin nhắn có gắn dấu sao", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "Hiển thị / thay đổi mã API của bạn", "Sign up": "Đăng ký", "Silent mentions do not trigger notifications.": "Đề cập im lặng không kích hoạt thông báo.", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "Sắp xếp theo lưu lượng truy cập ước tính hàng tuần", "Sort by name": "Sắp xếp theo tên", "Sort by number of subscribers": "Sắp xếp theo số lượng người đăng ký", + "Sort by unread message count": "", "Spoiler": "Làm hư hỏng", "Star": "Dấu sao", "Star selected message": "Gắn dấu sao cho tin nhắn đã chọn", @@ -1024,8 +1080,10 @@ "Subscribe": "Theo dõi", "Subscribe them": "Đăng ký chúng", "Subscribe to/unsubscribe from selected stream": "Đăng ký / hủy đăng ký khỏi Stream đã chọn", + "Subscribe {full_name} to streams": "", "Subscribed": "Đã đăng ký", "Subscribed streams": "Streams đã tham gia", + "Subscribed successfully!": "Đã bật theo dõi!", "Subscriber count": "Số lượng người đăng ký", "Subscribers": "Người đăng ký", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "Không có từ cảnh báo hiện tại.", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "Máy chủ Zulip này đang chạy phiên bản cũ và cần được nâng cấp", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "Đây là thông báo Zulip trông như thế nào.", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "Thư này đã bị ẩn vì bạn đã tắt tiếng người gửi.", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "Múi giờ", "Time's up!": "Hết giờ rồi", "Tip: You can also send \"/poll Some question\"": "Mẹo: Bạn cũng có thể gửi \"/ thăm dò ý kiến ​​Một số câu hỏi\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "Để mời người dùng, vui lòng tăng số lượng giấy phép hoặc hủy kích hoạt những người dùng không hoạt động.", "To preserve your reading state, this view does not mark messages as read.": "Để duy trì trạng thái đọc của bạn, dạng xem này không đánh dấu thư là đã đọc.", "Today": "Hôm nay", @@ -1112,7 +1170,6 @@ "Toggle subscription": "Chuyển đổi đăng ký", "Toggle the gear menu": "Chuyển đổi thực đơn bánh răng", "Toggle topic mute": "Chuyển đổi chế độ ẩn chủ đề", - "Tomorrow": "Ngày mai", "Tomorrow at {time}": "", "Topic": "Chủ đề", "Topic muted": "Chủ đề bị tắt tiếng", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "Xác thực hai yếu tố", "Type": "Loại hình", + "URL": "", + "URL for your integration": "", "URL pattern": "Mẫu URL", - "URL prefix": "Tiền tố URL", "URL template": "", "USERS": "Người dùng", "Uncheck all": "Bỏ chọn tất cả", @@ -1139,6 +1197,7 @@ "Unmute this user": "Bật tiếng người dùng này", "Unmute topic": "Bật tiếng topic", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "Bỏ ghim luồng khỏi đầu", "Unread": "Chưa đọc", "Unread count badge (appears in desktop sidebar and browser tab)": "Huy hiệu số lượng chưa đọc (xuất hiện trong thanh bên của máy tính để bàn và tab trình duyệt)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "Xem bản nháp", - "View edit history": "Xem lịch sử chỉnh sửa", + "View edit and move history": "", "View file": "Xem tài liệu", "View in playground": "Xem trong sân chơi", "View in {name}": "Xem trong {name}", @@ -1227,9 +1286,10 @@ "Web-public": "Web-public", "Wednesday": "Thứ tư", "Week of {date}": "Tuần của {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "Chào mừng trở lại! Bạn có {unread_msgs_count} tin nhắn chưa đọc. Bạn có muốn đánh dấu tất cả chúng là đã đọc không?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "Khi bạn hủy kích hoạt, họ sẽ bị đăng xuất ngay lập tức.", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "Liệu các đề cập theo ký tự đại diện như @all có được coi là đề cập cho mục đích thông báo hay không.", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "Ai có thể truy cập stream này?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "Ai có thể tạo và quản lý nhóm người dùng", "Who can create private streams": "Ai có thể tạo Stream riêng tư", "Who can create public streams": "Ai có thể tạo Stream công khai", + "Who can create reusable invitation links": "", "Who can create web-public streams": "Ai có thể tạo Stream công khai trên web", "Who can delete their own messages": "Ai có thể xóa tin nhắn của chính họ", - "Who can invite users to this organization": "Ai có thể mời người dùng vào tổ chức này", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "Ai có thể đăng lên Stream?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "Ai có thể sử dụng @ all / @ mà mọi người đề cập trong các luồng lớn", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "Bạn và", "You and {display_reply_to}": "Bạn và {display_reply_to}", "You and {recipients}": "Bạn và {recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "Bạn hiện chưa tham gia Stream này.", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "Bạn đang gửi một tin nhắn đến một chủ đề đã được giải quyết. Bạn có thể gửi nguyên trạng hoặc không giải quyết chủ đề trước.", "You are using an old version of the Zulip desktop app with known security bugs.": "Bạn đang sử dụng phiên bản cũ của ứng dụng Zulip dành cho máy tính để bàn với các lỗi bảo mật đã biết.", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "Bạn không theo dõi dòng hội thoại này và chưa có ai nói vê việc đó hết!", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "Bạn cũng có thể tạo bảng với cú pháp bảng Markdown-ish này.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "You do not have permission to use wildcard mentions in this stream.", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "Bạn lấy", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "Bạn đã tắt tiếng.", + "You have muted this topic": "", "You have no active bots.": "Bạn không có bots đang hoạt động.", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "Bạn chưa tắt tiếng bất kỳ người dùng nào.", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "Bạn chưa tải lên bất kỳ tệp nào.", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "Bạn vẫn chưa được nhắc đến!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "Bạn phải là quản trị viên tổ chức để tạo luồng mà không cần đăng ký.", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "Bạn cần chạy phản chiếu Zephyr để gửi tin nhắn!", "You searched for:": "Bạn tìm kiếm cho:", "You subscribed to stream ": "", "You type": "Bạn gõ", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "Bạn chưa theo dõi dòng hội thoại này. Bạn sẽ không được thông báo khi người dùng khác trả lời tin nhắn của bạn. ", "Your API key:": "Mã API Key của bạn", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip cần gửi thư để xác nhận địa chỉ email của người dùng và gửi thông báo ", "Zulip needs your permission to enable desktop notifications.": "Zulip cần sự cho phép của bạn để bật thông báo trên màn hình.", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Các bản dịch của Zulip được đóng góp bởi cộng đồng dịch giả tình nguyện tuyệt vời của chúng tôi. Nếu bạn muốn trợ giúp, hãy xem hướng dẫn dịch Zulip.", "[Configure]": "[Định cấu hình]", - "[Disable]": "[Vô hiệu hóa]", - "[More…]": "[Hơn…]", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "trong 1 giờ", - "in 20 minutes": "trong 20 phút", - "in 3 hours": "trong 3 tiếng", "invisible mode off": "", "leafy green vegetable": "", "marketing": "tiếp thị", "more conversations": "", "more topics": "thêm chủ đề", - "or": "", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} ngày trước", "{full_name} is typing…": "{full_name} đang gõ…", "{hours} hours ago": "{hours} giờ trước", - "{items_selected} selected": "Đã chọn {items_selected}", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} tối thiểu để chỉnh sửa", "{minutes} minutes ago": "{minutes} một vài phút trước", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", "{seconds} sec to edit": "{seconds} giây để chỉnh sửa", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "{username} đã phản ứng bằng {emoji_name}" diff --git a/locale/zh_Hans/LC_MESSAGES/django.po b/locale/zh_Hans/LC_MESSAGES/django.po index 5169a85ad4..959fc8fedf 100644 --- a/locale/zh_Hans/LC_MESSAGES/django.po +++ b/locale/zh_Hans/LC_MESSAGES/django.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: FaZang, 2022\n" "Language-Team: Chinese Simplified (http://app.transifex.com/zulip/zulip/language/zh-Hans/)\n" @@ -27,46 +27,47 @@ msgstr "" "Language: zh-Hans\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "禁止访客用户" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "无效的社群" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "公开频道" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "私有频道" -#: analytics/views/stats.py:296 -msgid "Direct messages" -msgstr "" - #: analytics/views/stats.py:297 +msgid "Direct messages" +msgstr "私信" + +#: analytics/views/stats.py:298 msgid "Group direct messages" +msgstr "私聊群组消息" + +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "未知的图表名称:{}" - -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "开始时间晚于结束时间。 开始: {start}, 结束: {end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "没有分析数据可用。 请联系您的服务器管理员。" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "无效参数" @@ -127,29 +128,31 @@ msgid "" msgstr "您的社群没有足够的未使用的 Zulip 许可证来邀请 {num_invites} 用户。" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "您必须为至少{}用户开具发票。" +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." +msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." -msgstr "无法从此页面处理超过 {} 个许可的账单。要完成升级,请联系 {}。" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "发生了一些错误。请联系 {email}。" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "出错啦!请刷新页面!" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "出错啦!请过几秒再试." -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -181,7 +184,7 @@ msgstr "无法更新计划。该计划已过期并被新计划取代。" msgid "Unable to update the plan. The plan has ended." msgstr "无法更新计划。计划已经结束。" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -197,14 +200,14 @@ msgstr "在当前计费周期内,您的计划已使用 {licenses} 许可。" msgid "You cannot decrease the licenses in the current billing period." msgstr "您不能减少当前计费周期内的许可证。" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "您的计划已安排续订 {licenses_at_next_renewal} 许可证。" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "没什么可改变的。" @@ -216,7 +219,7 @@ msgstr "该社群没有客户!" msgid "Session not found" msgstr "找不到会话" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "必须是帐单管理员或社群所有者" @@ -266,7 +269,7 @@ msgid "" msgstr "\n如果此错误是意外的,你可以联系支持。" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "服务器内部错误" @@ -568,9 +571,9 @@ msgstr "账单状态" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -588,9 +591,9 @@ msgstr "查看定价" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "自托管 Zulip" @@ -600,9 +603,9 @@ msgstr "自托管 Zulip" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "请求赞助" @@ -865,51 +868,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "使用%(identity_provider)s登录" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "感谢注册!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "还没有收到邮件? 点击重新发送." - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "也有可能在您的垃圾邮件夹中" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "无法连接到 Zulip。" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "更新可能会延迟。" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "即将重试…" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "立即连接" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "消息" @@ -1157,6 +1160,159 @@ msgstr "普通用户" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "欢迎访问Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "社群网址:%(organization_url)s" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "使用您的 LDAP 帐户登录" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "Zulip社群%(realm_name)s:您的新社群详情" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "Zulip组织%(realm_name)s:您的新账户详情" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "您加入了Zulip社群%(realm_name)s" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1164,6 +1320,39 @@ msgstr "" msgid "Hi," msgstr "您好" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "如果您未请求此更改,请立即通过 %(support_email)s 与我们联系。" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "如果不是你请求的变更,请立即联系我们<%(support_email)s>。" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1177,23 +1366,10 @@ msgstr "我们收到您的Zulip账户%(realm_uri)s电子邮件地址由%(old_ema msgid "Confirm email change" msgstr "确认电子邮件更改" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "如果您未请求此更改,请立即通过 %(support_email)s 与我们联系。" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "验证您的新电子邮件地址" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." -msgstr "如果不是你请求的变更,请立即联系我们<%(support_email)s>。" +msgid "Verify your new email address for %(organization_host)s" +msgstr "" #: templates/zerver/emails/confirm_registration.html:10 #: templates/zerver/emails/confirm_registration.txt:2 @@ -1247,17 +1423,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1362,225 +1527,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "您的电子邮件地址 %(email)s 拥有以下由 %(external_host)s 托管的 Zulip 社群的帐户:" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "欢迎访问Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "社群网址:%(organization_url)s" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "使用您的 LDAP 帐户登录" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "Zulip社群%(realm_name)s:您的新社群详情" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "Zulip组织%(realm_name)s:您的新账户详情" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "您加入了Zulip社群%(realm_name)s" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "简短主题的例子" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "上Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1665,14 +1611,14 @@ msgstr "此邀请将在两天后到期。如果邀请过期,您需要向 %(ref #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1704,21 +1650,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1726,21 +1696,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1783,29 +1753,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "\n此电子邮件不包含消息内容,因为您已禁用出现在电子邮件通知中的消息内容。有关详细信息,请参阅 %(alert_notif_url)s。\n" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\n请勿回复次邮件. Help:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "管理电子邮件首选项:" @@ -1968,6 +1938,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1996,6 +1974,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "简短主题的例子" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "上Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2384,7 +2434,7 @@ msgid "Incoming webhooks" msgstr "传入的网络钩子" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "交互机器人" @@ -2884,292 +2934,295 @@ msgid "" " " msgstr "\n您还可以使用Zulip 桌面应用程序。" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "注册" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} 刚刚注册了 Zulip。 (总计:{user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} 接受了您加入 Zulip 的邀请!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "无效的命令映射" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "找不到字段ID {id}" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "默认频道组名称“{}”无效" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "默认频道组名称太长(限制:{} 个字符)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "默认频道组名称“{}”包含 NULL (0x00) 字符。" +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "无效的默认频道组 {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "“{stream_name}”是默认频道,不能添加到“{group_name}”" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "默认频道组“{group_name}”已存在" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "频道“{stream_name}”已存在于默认频道组“{group_name}”中" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "默认频道组“{group_name}”中不存在频道“{stream_name}”" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "此默认频道组已命名为“{}”" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "默认频道组“{}”已存在" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "为了保护用户,Zulip 限制了您一天内可以发送的邀请数量。由于您已达到限制,因此未发送任何邀请。" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "你的帐号太新了,不能为这个社群发送邀请。询问社群管理人员或更有经验的用户。" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "一些邮箱没有通过验证,因此我们没有发送邀请" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "没有邀请任何人" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "有部分地址已经在使用Zulip,因此没有向他们发送邀请;其余地址已经发送!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "无需修改(Nothing to change)" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "没有主题编辑的无效传播模式" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "更改频道时无法更改消息内容" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "无法编辑小部件。" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "{user} 已将此主题标记为已解决。" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "{user} 已将此主题标记为未解决。" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "此主题已由 {user} 移至 {new_location}。" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "{user} 将一条消息从该主题移至 {new_location}。" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "{changed_messages_count} 消息已由 {user} 从此主题移至 {new_location}。" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "此主题由 {user} 从 {old_location} 移至此处。" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "{changed_messages_count} 消息由 {user} 从 {old_location} 移至此处。" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "您的社群已关闭邮件编辑" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "您没有权限编辑该消息" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "编辑消息超时" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "您无权在此信息频道中使用通配符提及。" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "您无权移动此邮件" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "由于无法访问其信息频道,您无权移动此信息" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "无效标志:“{}”" +#, python-brace-format +msgid "Invalid flag: '{flag}'" +msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "标志不可编辑:“{}”" +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" -msgstr "无效的消息标志操作:“{}”" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "消息不正确" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "不能渲染消息" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "预计只有一个频道" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "频道的数据类型无效" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "收件人的数据类型无效" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "收件人列表可能包含电子邮件或用户 ID,但不能同时包含两者。" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "您的机器人 {bot_identity} 尝试向频道 ID {stream_id} 发送消息,但没有具有该 ID 的频道。" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "您的机器人 {bot_identity} 尝试向频道 {stream_name} 发送消息,但该频道不存在。单击 [此处]({new_stream_link}) 以创建它。" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "您的机器人 {bot_identity} 尝试向频道 {stream_name} 发送消息。频道存在但没有任何订阅者。" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "此社群需要主题" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "组件:API程序发送了无效的JSON内容" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "小部件:{error_msg}" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "反应已经存在" - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "自定义表情名称已经存在" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3183,8 +3236,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3203,18 +3256,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "{user} 将此频道的 [访问权限](/help/stream-permissions) 从 **{old_policy}** 更改为 **{new_policy}** 。" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3223,38 +3290,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "{user} 更改了此频道的 [发布权限](/help/stream-sending-policy):\n\n* **旧权限** :{old_policy}。\n* **新权限** :{new_policy}。\n" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} 将频道 {old_stream_name} 重命名为 {new_stream_name}。" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "没有描述信息。" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "{user} 更改了此频道的描述。" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "旧描述" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "新描述" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "永远" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "此频道中的消息现在将永久保留。" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3264,56 +3331,59 @@ msgid "" "{summary_line}" msgstr "{user} 已更改此频道的 [消息保留期](/help/message-retention-policy):* **旧保留期** :{old_retention_period} * **新保留期** :{new_retention_period} {summary_line}" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "您不能在此邮件中附加子邮件。" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "无效的用户ID{}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "用户组“{}”已存在。" +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "这个API不适用于传入的webhook机器人" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "帐户未与任何子域关联" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "该端点不接受bot请求" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "必须是服务器管理员" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "权限不足" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "此端点需要HTTP基本身份验证。" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "基本认证的授权头不正确" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "缺少基本认证的授权头信息" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "WebHook机器人只能访问Webhook内容" @@ -3328,95 +3398,101 @@ msgstr "您的帐户 {username} 已停用。请联系您的社群管理员以重 msgid "The password is too weak." msgstr "密码太弱。" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "子域名需要长度至少3个字符以上" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "子域名不能以“-”开头或结尾" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "子域只能有小写字母,数字和'-'。" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "子域不可用,请选择其他的域名" +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "请使用真实的邮件地址注册" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "您尝试使用{email}加入的社群不存在。" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "请查询来自社群管理员{email}的邀请" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "您的电子邮件地址{email}不在允许在该社群中注册帐户的域之一。" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "在这个社群中电子邮件地址不能包含+" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "新成员无法加入此社群,因为所有 Zulip 许可证都在使用中。请联系邀请您的人并要求他们增加许可证数量,然后重试。" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "新密码" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "确认新密码" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." -msgstr "您尝试登录的次数过多。请在 {} 秒后重试,或联系您的社群管理员寻求帮助。" +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." +msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "您的密码已被禁用,因为它太弱了。重置您的密码以创建一个新密码。" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "令牌" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "请输入最多10个电子邮件地址" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "我们找不到那个Zulip社群" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "不合规邮箱 '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3480,31 +3556,31 @@ msgstr "子域名不能以“-”开头或结尾" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "域名允许包含字母或数字,以及'-'" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "时间戳不能为负数。" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "主题不得包含空字节" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "必须为频道消息准确指定 1 个频道 ID" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "用户已禁用同步草稿。" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "草稿不存在" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "打开Zulip看剧透内容" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "祖利普通知" @@ -3537,166 +3613,166 @@ msgstr "帐户已经存在" msgid "Account has been deactivated." msgstr "账户已被禁用" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "表情 '{}' 不存在" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "无效自定义表情" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "无效自定义表情名称" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "自定义表情被禁用" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "无效的表情代码" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "无效的表情名称" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "无效的表情类型" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "必须是社群管理员或表情作者" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "缺少表情名称" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "无法分配事件队列" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "未登录:提供用户会话或者API认证" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "频道'{stream}不存在" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "ID为'{stream_id}'的频道不存在" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "组织所有者" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "用户" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "不能禁用唯一的 {entity}" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "无效的 Markdown 包含语句:{include_statement}" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "API请求超过了限制" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "JSON格式不正确" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "必须是社群成员" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "必须是社群管理员" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "必须是社群所有者" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "您的用户名或密码不正确" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "账户被禁用" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "这个社群已被禁用" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "您的服务器的移动推送通知服务注册已停用" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "此社群中已禁用密码身份验证" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "您的密码已被禁用,需要重新设置" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "错误的 API key" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "Malformed API key" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" -msgstr "{webhook_name} 页面钩子现在不支持'{event_type}' 事件" +"webhook; ignoring" +msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "无法解析请求:{webhook_name} 是否生成了此事件?" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "无效的子域名" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "访问被拒绝" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3704,6 +3780,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "反应已经存在" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "反应不存在" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3745,8 +3829,8 @@ msgid "Settings" msgstr "设置" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." -msgstr "转到设置,配置通知和显示设置。" +msgid "Go to Settings to configure your notifications and preferences." +msgstr "" #: zerver/lib/hotspots.py:34 msgid "Compose" @@ -3758,264 +3842,272 @@ msgid "" "and give it a go!" msgstr "点击这里开始新聊天,选择一个话题(最好2-3个词),开始吧!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "集成框架" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "持续集成" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "客户支持" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "部署" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "娱乐" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "通信" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "财务" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "销售" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "杂项" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "工程管理" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "效率" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "版本控制" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "消息不能为空" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "消息不能包含空字节" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." -msgstr "不支持运算符 {}。" +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." +msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "无效的窄运算符:{desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "缺少“锚”参数。" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "无效的锚点" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "如果您是 Zulip 的新手,请查看我们的 [入门指南]({getting_started_url})!" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "您好,欢迎来到祖利普!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "我也可以帮你设置!只需单击此消息上的任意位置或按“r”即可回复。" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "以下是我理解的一些消息:" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "转到 [个人资料设置](#settings/profile) 添加 [个人资料图片](/help/change-your-profile-picture) 并编辑您的 [个人资料信息](/help/edit-your-profile)。" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." -msgstr "进入[显示设置](#settings/display-settings)[明暗主题切换](/help/dark-theme),[选择你最喜欢的表情符号主题](/help/emoji-and-emoticons# change-your-emoji-set),[更改您的语言](/help/change-your-language),并对您的 Zulip 体验进行其他调整。" +msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "在 Zulip 中,频道 [确定谁收到消息](/help/streams-and-topics)。它们类似于其他聊天应用程序中的频道。" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "[浏览和订阅频道](#streams/all)。" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "在 Zulip 中,主题 [告诉您消息的内容](/help/streams-and-topics)。它们是轻量级主题,非常类似于电子邮件的主题行。" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "Zulip 的 [键盘快捷键](#keyboard-shortcuts) 可让您快速有效地浏览应用程序。" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "随时按`?`查看[备忘单](#keyboard-shortcuts)。" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "Zulip 使用 [Markdown](/help/format-your-message-using-markdown),这是一种直观的 **bold** 、*italics*、项目符号列表等格式。单击 [此处](#message-formatting) 获取备忘单。" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "查看我们的[消息提示](/help/messaging-tips),了解表情符号反应、代码块等等!" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "查看我们的 [入门指南](/help/getting-started-with-zulip),或浏览 [帮助中心](/help/) 了解更多信息!" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "对不起,我没看懂你的留言。请尝试以下命令之一:" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "这是一个私有频道,如频道名称旁边的锁定图标所示。" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "私有频道仅对频道成员可见。" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "要管理此频道,请转到 [频道设置]({stream_settings_url}) 并单击“ {initial_private_stream_name} ”。" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "这是 #**{default_notification_stream_name}** 频道上的一条消息,主题为“主题演示”。" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "主题是保持对话井井有条的轻量级工具。" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "您可以在 [频道和主题]({about_topics_help_url}) 了解有关主题的更多信息。" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "这是#**{default_notification_stream_name}** 频道上的一条消息,主题为“游泳的海龟”。" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4030,669 +4122,758 @@ msgstr "响应中的 JSON 无效" msgid "Invalid response format" msgstr "无效的响应格式" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "保镖的 GCM 选项无效:优先级 {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "保镖的 GCM 选项无效:{}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token不存在" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "此社群已禁用在移动推送通知中包含消息内容" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "{full_name} 提到 @{user_group_name} :" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} 提到了您:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} 提到了大家:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "用户没有授权本次查询" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "“{email}”不再使用 Zulip。" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" -msgstr "推送通知错误:{}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" +msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "不能在“{var_name1}”和“{var_name2}”参数之间进行选择" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "缺少参数: '{var_name}' " -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "错误值:'{var_name}': {bad_value}" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "格式错误的有效载荷" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." -msgstr "参数“{}”不是有效的 JSON。" +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." +msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip 账户安全" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "只有社群管理员才能发送到这个频道" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "只有组织管理员和版主可以发送到此信息频道。" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "访客无法发送到此信息频道。" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "新成员无法发送到此信息频道。" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "无权发送到频道“{}”" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "请提供频道名称" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "请选择一个:频道名称或者频道ID" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "频道名称“{}”已被占用。" +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "无效的频道名称“{}”" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "频道(这些) ({}) 不存在" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "未启用 Web 公共频道。" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "ID 为“{}”的默认频道组不存在。" +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "频道名称不能为空!" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "频道名称太长(限制:{} 个字符)。" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." +msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" -msgstr "频道名称中的无效字符,位于 {} 位置!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "主题不能为空!" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "主题中的无效字符,位置 {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" +msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "订阅数据在这个频道不可用" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "无法检索订阅私有频道" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} 不是布尔值" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} 不是日期" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} 不是字典" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} 不是浮点数" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "{var_name} 太小" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} 不是整数" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "{var_name} 太大" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} 不是列表" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "{var_name} 无效" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} 过长 (不超过: {max_length}个字符)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} 不是字符串" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "上传超出了您社群的允许范围" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "不能解码图片;您上传的是图片文件吗?" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "图像大小超过了限制" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "损坏的动画图像。" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "未知的动画图像格式。" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "无效的用户组" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" -msgstr "无效的用户组 ID:{}" - -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." +msgstr "" + +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "名字太长" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "名称太短!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "名称中有无效字符!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "无效的格式!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "用户名已被占用" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "名字或者用户名错误" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "无效的集成“{}”。" +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "缺少配置参数:{}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "无效的配置数据" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "无效的机器人类型" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "无效的接口类型" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "无效的用户 ID:{}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "机器人不存在" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "不存在该用户" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "用户被禁用" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} 不是字符串" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item}不能为空格" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "{var_name} 无效" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} 过长 (不超过: {max_length}个字符)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} 长度不正确 {length}; 应该为 {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} 不是日期" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} 不是整数" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "{var_name} 太小" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "{var_name} 太大" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} 不是浮点数" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} 不是布尔值" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} 不是有效的十六进制颜色代码" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} 不是列表" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} 应该正好有 {length} 项" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} 不是字典" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "{var_name} 中缺少 {key_name} 键" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "意外参数:{}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} 不是 allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value}({value} 错误)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} 不是网址" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "URL 模式必须包含'%(username)s'。" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' 不能为空格" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "字段不能有重复的选择。" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' 不是 '{field_name}'字段的合法选项" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} 不是字符串或整数列表" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} 不是字符串或整数" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "{var_name} 没有长度" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "{var_name} 丢失" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "HTTP事件头 '{header}'丢失" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." -msgstr "{} 网络钩子预计时间以毫秒为单位。" +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." +msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "zcommand前面必须有/" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" -msgstr "没有这样的命令:{}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" +msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "CSRF 错误:{reason}" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "频道事件" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "在 Zulip Cloud Standard 上可用。升级访问。" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "表情符号名称中无效的字符" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" -msgstr "错误的正则表达式:{}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" +msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "未知的正则表达式错误" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "pygments 语言中的无效字符" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "管理者和拥有调节权限的成员" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "只允许管理员" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "没人" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "社群所有者" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "社群管理员" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "版主" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "成员" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "访客" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "网络公开" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "公开" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "私人的、共享的历史消息" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "私人的、受保护的历史消息" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "公开的、受保护的历史" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "所有信息频道成员都可以发帖" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "只有社群管理员可以发帖" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "只有社群管理员和版主可以发帖" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "只有社群正式成员才能发帖" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode 表情符号" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "自定义表情" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip额外表情" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" -msgstr "ID 为 {} 的用户已停用" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" +msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" -msgstr "ID 为 {} 的用户是机器人" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" +msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "选项列表" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "用户选择" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "短文本" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "长文本" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "日期选择" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "链接" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "外部帐户" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "未知IP地址" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "未知的操作系统" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "未知的浏览器" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "缺少参数'queue_id'" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "缺少参数'last_event_id'" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "比 {event_id} 更新的事件已被修剪!" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "事件 {event_id} 不在此队列中" @@ -4760,89 +4941,123 @@ msgstr "具有该标签的字段已存在。" msgid "Default custom field cannot be updated." msgstr "无法更新默认自定义字段。" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "端点在生产中不可用。" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "未启用 DevAuthBackend。" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "未知热点:{}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "必须指定至少一个邮箱地址" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "ID为 {}的频道不存在,邀请未被发送" - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "没有这个邀请" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "社群内禁止更改消息历史记录" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "无删除此消息权限" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "删除此消息超时" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "信息已经被删除" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." -msgstr "请求的消息过多(maximum {} )。" +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." +msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "没有这样的主题“{}”" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "缺少发送人" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "不允许对收件人用户ID进行镜像" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "镜像消息不正确(Invalid mirrored message)" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "这个社群禁止Zephyr镜像" @@ -4858,27 +5073,28 @@ msgstr "用户已静音" msgid "User is not muted" msgstr "用户未静音" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "不支持机器人的用户不存在。" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "{user_id_or_email} 没有存在数据" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "客户端没有传递任何新值。" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "如果客户端传递 emoji_code 或反应类型,则客户端必须传递 emoji_name。" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "无效状态:{}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4894,37 +5110,37 @@ msgid "" "emoji_code" msgstr "至少提供一个下面的参数:表情名称,表情代码" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "反应不存在" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "无效的语言“{}”" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "必须至少启用一种身份验证方法。" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "无效的 video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" +msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" -msgstr "无效的 giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "必须是演示社群。" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "无效的域名:{}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4936,42 +5152,43 @@ msgstr "域 {domain} 已经是您社群的一部分。" msgid "No entry found for domain {domain}." msgstr "找不到域 {domain} 的条目。" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "你只能上传一个文件。" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" -msgstr "上传的文件大于 {} MiB 的允许限制" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" +msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "超出速率限制。" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "请从 {email} 请求手动导出。" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "数据导出 ID 无效" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "导出已删除" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4979,7 +5196,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "你必须上传一个图标" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "未找到链接器。" @@ -4987,107 +5204,100 @@ msgstr "未找到链接器。" msgid "You must upload exactly one logo." msgstr "您必须上传一个Logo" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "无效的代码游乐场" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "用户无权使用“{principal}”执行查询" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "不能将私有频道设为默认值。" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "您必须传递“new_description”或“new_group_name”。" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "“op”的无效值。使用“添加”或“删除”。" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "默认频道不能设为私有。" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "频道已经有了这个名字!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "没有动作,至少指定\"add\"或者\"delete\"" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} 为您订阅了频道 {stream_name}。" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} 为您订阅了以下频道:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "无法访问频道 ({stream_name})。" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "您只能邀请其他Zephyr镜像用户到私有频道。" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} 创建了以下频道:{stream_str}。" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} 创建了一个新频道 {stream_str}。" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "新频道" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "**{policy}** 频道由 {user_name} 创建。 **频道介绍:** " -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "未知订阅属性:{}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "未订阅频道 ID {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "子消息的json无效" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "

没有权限查看这个文件!

" @@ -5103,97 +5313,108 @@ msgstr "用户已禁用频道消息的输入通知" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

文件不存在

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "令牌无效" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "无效的文件名" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "必须指定要上传的文件" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "一次只可以上传一个文件" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "没有提供新的数据" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "用户 {user_id} 已经是该组的成员" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "此用户组中没有成员“{}”" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "用户组 {group_id} 已经是该组的子组。" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "用户组 {group_id} 不是该组的子组。" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "本社群禁止修改头像" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "本社群禁止更改电子邮件地址。" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "无效的默认语言" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "无效的通知音效 '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" +msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" -msgstr "无效的电子邮件批处理周期:{} 秒" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "您的Zulip密码由LDAP管理" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "密码错误!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." -msgstr "你的尝试太多了! {} 秒后重试。" +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." +msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "新密码太弱!" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "必须上传恰好一个头像文件" @@ -5240,6 +5461,10 @@ msgstr "无效的内置机器人名称" msgid "Username already in use" msgstr "用户名已被占用" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5250,8 +5475,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "本社群不允许使用一次性电子邮件地址" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "电子邮件“{}”已被使用" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5269,27 +5495,27 @@ msgstr "无效的缩放会话标识符" msgid "Invalid Zoom credentials" msgstr "无效的缩放凭据" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "未能创建 Zoom 通话" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "BigBlueButton 未配置。" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "无效的签名。" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "连接到 BigBlueButton 服务器时出错。" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "对 BigBlueButton 服务器进行身份验证时出错。" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "BigBlueButton 服务器返回意外错误。" @@ -5309,28 +5535,28 @@ msgstr "Kerberos缓存不正确" msgid "We were unable to set up mirroring for you" msgstr "我们无法为您设置镜像" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "无效的负载" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "未知的Webhook请求" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "话题不能为空" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "内容不能为空" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "JSON输入格式不正确" @@ -5349,7 +5575,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "Payload 中缺少 events 键" @@ -5357,19 +5583,20 @@ msgstr "Payload 中缺少 events 键" msgid "Unable to handle Pivotal payload" msgstr "无法处理Pivotal的payload" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "channels_map_to_topics 不应该有除了0和1以外的参数" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "来自Slack的消息" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "未知的 WordPress webhook 操作:{}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5386,47 +5613,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "必须验证有效的Zulip服务器 API Key" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "无效的 UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "无效的Token类型" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} 不是有效的主机名" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "缺少 user_id 或 user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "无效的属性 {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "数据超出要求" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "无效数据。" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "您需要重设密码。" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "缺少 id_token 参数" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "无效的OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "不能同时使用 mobile_flow_otp 和 desktop_flow_otp。" diff --git a/locale/zh_Hans/translations.json b/locale/zh_Hans/translations.json index 0e914cf452..a140a00338 100644 --- a/locale/zh_Hans/translations.json +++ b/locale/zh_Hans/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(隐藏)", "(no description)": "(太懒啦,没有留下什么介绍)", "(no topic)": "(无话题)", + "(or )": "", "(you)": "(您)", "({message_retention_days} days)": "({message_retention_days} 天)", "/dark (Switch to the dark theme)": "/dark (切换至深色界面)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": " {name} 未订阅此频道。如需接收通知,必须订阅本频道。", "{username} has {number_of_invites_by_user} unexpired invitations.": "{username} 拥有 {number_of_invites_by_user} 个未过期的邀请。", "Subscribe": "订阅", - "Click here to learn about exporting private streams and messages.": "点击这里了解如何导出私有频道和消息。", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "升级更多空间。", " to add a new line": "添加新行", " to send": "发送", @@ -82,15 +83,18 @@ "Add alert word": "新增敏感词", "Add all users": "添加所有用户", "Add another user...": "新增其他使用者", + "Add audio call": "", "Add code playground": "新增代码编辑器", + "Add default streams": "", + "Add email": "", "Add emoji": "新增表情符号", "Add emoji reaction": "挑选表情点赞", "Add extra emoji for members of the {realm_name} organization.": "为 {realm_name} 社群的成员添加额外的表情符号。", "Add global time": "添加全球时间", "Add linkifier": "新增链接器", "Add members": "新增成员...", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "新增成员...", - "Add new default stream": "新增默认频道", "Add new user group": "新增用户组", "Add one or more users": "增加一个或多个用户", "Add option": "添加选项", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "添加订阅者。使用用户组或#streamname 批量添加订阅者。", "Add task": "添加任务", "Add video call": "视频通话", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "添加成功!", "Added successfully.": "添加成功!", "Administrator": "管理员", @@ -124,6 +129,7 @@ "Alerted messages": "关注的消息", "All": "所有", "All direct messages": "所有私聊消息", + "All groups": "", "All messages": "所有消息", "All messages including muted streams": "所有消息,包括静音频道", "All streams": "所有频道", @@ -136,9 +142,11 @@ "Allow subdomains": "允许的子域名", "Allowed domains": "允许的域名", "Allowed domains: {domains}": "允许的域:{domains}", + "Already members:": "", "Already not subscribed.": "已经没有订阅了。", "Already subscribed to {stream}": "已订阅 {stream}", "Already subscribed users:": "已订阅用户:", + "Already subscribed.": "", "Always": "总是", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "API Key用于编程开发访问你的Zulip账户,如果Key被流出,陌生人可以:读取你的信息,使用你的身份发送信息,所以请不要公开API Key,像保护你的银行卡密码一样保护好它
我们建议通过创建机器人账户权限的API Key来访问Zulip API,除非某些特定任务需要访问你的账户。", "An hour ago": "一小时前", @@ -150,6 +158,7 @@ "Archive ?": "归档吗?", "Archive stream": "归档频道", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "将频道归档后所有人会被自动取消关注该频道。归档后不可撤回", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "确定要继续吗?", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "您确定要创建频道 ''''{stream_name} '''' 并为 {count} 用户订阅它吗?", "Are you sure you want to deactivate this organization?": "确定要停用此社群吗?", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "您确认向重新发送邀请链接?", "Are you sure you want to revoke the invitation to {email}?": "您确定要撤消对{email}的邀请吗?", "Are you sure you want to revoke this invitation link created by {referred_by}?": "您确定要撤消{referred_by}创建的邀请链接吗?", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "你确定发送 @-mention 消息给 {subscriber_count} 本 #{stream_name} 的订阅者嘛? 如果想取消这次 @{wildcard_mention} 操作,请重新编辑本消息.", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "确认取消里所有消息的星标吗?此操作无法撤消。", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "您要取消所有星标消息的星标吗?此操作无法撤消。", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "本社群禁止修改头像", "Avatar from Gravatar": "头像来自Gravatar", "Back to streams": "返回频道", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "账单", @@ -190,8 +201,11 @@ "Bot owner": "机器人主人", "Bot type": "机器人类型", "Bots": "机器人", + "Browse 1 more stream": "", "Browse recent conversations": "浏览最近的对话", "Browse streams": "浏览频道", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "商业", "Busy": "忙碌", "By deactivating your account, you will be logged out immediately.": "停用您的账户,您将会立即退出本社群。", @@ -218,6 +232,8 @@ "Click here to reveal.": "点击此处显示消息。", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "在输入框外点击保存。我们会自动通知添加或删除的任何人。", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "点击查看或下载。", "Close": "关闭", "Close modal": "关闭模态", @@ -232,7 +248,7 @@ "Commuting": "🚌通勤中", "Compact": "", "Complete": "完成", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "完成社群简介向大家介绍这个 Zulip 社群创建目的。", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "在这儿写点东西呀", "Compose your message here": "在这里写消息", "Compose your message here...": "在这里编辑消息", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "发送前自动转换表情 (:)转换成 😃)", "Cookie Bot": "Cookie Bot", "Copied!": "复制", + "Copy URL": "", "Copy address": "复制地址", "Copy and close": "复制并关闭", "Copy code": "复制代码", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "当前查看所有消息。", "Currently viewing the entire stream.": "当前正在查看整个社区。", "Custom": "自定义", + "Custom URL": "", "Custom emoji": "自定义表情", "Custom language: {query}": "自定义语言:{query}", "Custom linkifier added!": "添加了自定义链接器!", @@ -302,10 +320,12 @@ "Deactivated": "停用", "Deactivated users": "停用成员列表", "December": "十二月", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "默认为 {language}。使用 'text' 禁用突出显示。", "Default language for code blocks": "代码块的默认语言", "Default streams": "默认频道", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "默认用户设置", "Default view": "默认视图", @@ -314,12 +334,14 @@ "Delete": "删除", "Delete alert word": "删除提示词", "Delete all drafts": "删除所有草稿", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "删除草稿", "Delete file": "删除文件", "Delete file?": "", + "Delete group": "", "Delete icon": "删除图标", "Delete linkifier?": "", "Delete logo": "删除图标", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "根据您社群的规模,导出可能需要几秒钟到一个小时的时间。", "Deprecation notice": "禁用通知", "Description": "描述", + "Deselect draft": "", "Desktop": "桌面端", "Desktop & mobile apps": "程序和App", "Desktop message notifications": "桌面消息通知", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "详细的消息格式文档", "Detailed search filters documentation": "", "Direct message": "", - "Direct messages": "", + "Direct message to me": "", + "Direct messages": "私信", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "禁用", "Discard": "放弃", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "显示设置", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "要添加所有人吗?", + "Do you want to mark them all as read?": "", "Domain": "域名", "Don’t allow disposable email addresses": "不允许使用一次性电子邮箱地址", "Download": "下载", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "编辑链接器", "Edit message": "编辑消息", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "编辑选中的草稿", "Edit selected message or view source": "", "Edit status": "编辑状态", @@ -398,7 +423,6 @@ "Edit your last message": "编辑最新消息", "Edit your profile": "编辑您的资料", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "已编辑 ({last_edit_timestr})", "Edited by {full_name}": "由 {full_name} 编辑", "Education (for-profit)": "教育(营利)", "Education (non-profit)": "教育(非营利)", @@ -461,6 +485,7 @@ "External account type": "外部账户类型", "External link": "外部链接", "Failed": "失败", + "Failed adding one or more streams.": "", "Failed to create video call.": "无法创建视频通话。", "Failed to generate preview": "无法生成预览", "Failed to upload %'{file}'": "上传 %'{file}'失败", @@ -485,11 +510,9 @@ "Filter exports": "过滤导出", "Filter groups": "", "Filter invites": "过滤邀请人", - "Filter languages": "过滤语言", "Filter linkifiers": "过滤链接器", "Filter members": "", "Filter muted users": "过滤静音用户", - "Filter roles": "", "Filter streams": "过滤频道", "Filter subscribers": "过滤订阅者", "Filter topics": "过滤主题", @@ -500,6 +523,9 @@ "First message": "首条消息", "First time? Read our guidelines for creating and naming streams.": "第一次?阅读我们的新手指引用于创建和命名频道。", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "GIPHY 归属地", "GIPHY integration": "GIPHY 集成", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "通用邀请链接", "Generate new API key": "生成新的 API Key", @@ -542,14 +569,18 @@ "High contrast mode": "高对比度模式", "Hint": "提示", "Hint (up to 80 characters)": "提示(到达80个字符)", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "人类", "Idle": "空闲", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "忽略的停用用户:", "Image": "图片", "In a meeting": "会议中", "Inactive": "", "Inactive bots": "无效的机器人", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "在消息通知电子邮箱中包含消息内容", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "传入的webhooks只能发送消息。", "Initiate a search": "发起搜索", "Insert new line": "插入新的一行", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "应用整合", "Interface": "接口", "Invalid URL": "无效网址", @@ -581,6 +614,8 @@ "Inviting...": "邀请中...", "Italic": "斜体", "January": "一月", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "加入 {realm_name}", "Joined": "已加入", @@ -599,8 +634,10 @@ "Last 30 days": "过去 30 天", "Last 6 months": "过去 6 个月", "Last active": "最后活动时间", + "Last edited {last_edit_timestr}": "", "Last message": "最新消息", "Last modified": "最近修改", + "Last moved {last_edit_timestr}": "", "Learn more": "了解更多", "Learn more about mentions here.": "了解有关提及的更多信息这里.", "Learn more about starring messages here.": "了解有关为邮件加星标的更多信息这里.", @@ -623,6 +660,7 @@ "Log out": "退出", "Looking for our integrations or API documentation?": "寻找我们的集成或者API帮助文件?", "MOVED": "已移动", + "Main menu": "", "Manage bot": "管理机器人", "Manage streams": "管理频道", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "提及时区感知时间", "Mentioned in": "提到", "Mentions": "被提及消息", - "Menu": "菜单", "Menus": "菜单", "Message #{stream_name}": "在群聊 #{stream_name} 中发送消息", "Message #{stream_name} > {topic_name}": "在 #{stream_name} > {topic_name} 中发送消息", @@ -662,6 +699,8 @@ "Message {recipient_names}": "消息 {recipient_names}", "Message {recipient_name} ({recipient_status})": "消息 {recipient_name} ({recipient_status})", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "移动端", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "移动主题", - "Moved ({last_edit_timestr})": "已移动 ({last_edit_timestr})", "Moved by {full_name}": "由 {full_name} 移动", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "必须由订阅者邀请;新订阅者只能看到他们加入后发送的消息;对非管理员用户隐藏", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "必须由订阅者邀请;新订阅者可以查看完整的消息历史记录;对非管理员用户隐藏", + "Mute": "", "Mute stream": "静音频道", "Mute this user": "将此用户静音", "Mute topic": "静音主题", @@ -734,38 +773,42 @@ "New password is too weak": "新密码太弱", "New stream announcements": "", "New stream message": "写消息", + "New stream notifications": "新的信息频道通知", "New task": "新任务", "New topic": "新话题", "New user announcements": "", + "New user notifications": "", "Next message": "下一条消息", "Next unread direct message": "", "Next unread topic": "下一条未读话题", - "Next week": "下周", "No bots match your current filter.": "没有机器人能匹配当前的过滤器。", + "No conversations match your filters.": "", "No custom emoji.": "没有自定义表情符号。", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "没有默认频道可以匹配你当前的过滤器。", "No description.": "没有描述信息。", + "No drafts selected": "", "No drafts.": "没有草稿", "No exports.": "没有导出的内容。", "No invites match your current filter.": "没有邀请匹配当前过滤器。", "No language set": "未设置语言", "No linkifiers set.": "未设置链接器。", + "No matching results": "", "No matching users.": "没有匹配的用户。", - "No one has read this message yet.": "", + "No one has read this message yet.": "尚无人阅读此消息。", "No owner": "没有所有者", "No playgrounds configured.": "未配置游乐场。", "No restrictions": "无限制", "No scheduled messages.": "", - "No search results": "没有搜索结果", "No search results.": "", "No stream subscriptions.": "没有频道订阅。", "No streams": "没有频道", "No topics are marked as resolved.": "没有主题被标记为已解决。", - "No topics match your current filter.": "没有主题符合您当前的过滤条件。", "No user group subscriptions.": "没有用户组订阅。", "No user groups": "", "No user to subscribe.": "没有用户订阅。", "No users match your current filter.": "没有匹配到用户在你的筛选器中。", + "No users to add.": "", "No, I'll catch up.": "否", "Nobody": "没有人", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "提醒频道", "Notify this user by email?": "", "November": "十一月", + "Numbered list": "", "October": "十月", "Old password": "旧密码", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "只有频道成员才可以添加用户到私有频道", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "只有该频道的关注者可以修改频道内的权限", "Open": "打开", "Open message menu": "打开消息菜单", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "政治团体", "Posted by {full_name}": "由 {full_name} 发布", + "Preferences": "", "Press > for list of topics": "按 > 获取主题列表", "Prevent users from changing their avatar": "禁止用户更改头像", "Prevent users from changing their email address": "阻止用户更改邮件地址", @@ -869,6 +915,7 @@ "Previous message": "上一条消息", "Privacy": "隐私政策", "Privacy settings": "隐私设置", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "私人的、受保护的历史消息", "Private, shared history": "私人的、共享的历史消息", "Profile": "资料", @@ -883,10 +930,11 @@ "Reactivate bot": "重启机器人", "Reactivate this bot": "", "Reactivate this user": "重新激活该用户", + "Reactivate user": "", "Reactivate {name}": "重新激活 {name}", - "Read receipts": "", + "Read receipts": "阅读回执", "Read receipts are currently disabled in this organization.": "", - "Read receipts are not available for Notification Bot messages.": "", + "Read receipts are not available for Notification Bot messages.": "提醒机器人信息不支持阅读回执。", "Receives new stream announcements": "", "Recent conversations": "", "Remove": "移除", @@ -930,6 +978,7 @@ "Saved as draft": "保存为草稿", "Saved. Please reload for the change to take effect.": "已保存。请重新加载使更改生效。", "Saving": "保存中", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "查看如何设置电子邮箱", "Select a stream": "", "Select a stream below or change topic name.": "在下面选择一个频道或更改主题名称。", - "Select date and time": "选择日期和时间", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "选择表情符号", "Select language": "", + "Select stream": "", "Send": "发送", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "当我离线时发送摘要邮件", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "显示上传文件链接的图像预览", "Show starred message count": "显示星标消息计数", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "显示/修改您的 API Key", "Sign up": "注册", "Silent mentions do not trigger notifications.": "无声提及不会触发通知。", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "按估计的每周频道量排序", "Sort by name": "按名称分类", "Sort by number of subscribers": "按订阅者数量排序", + "Sort by unread message count": "", "Spoiler": "剧透", "Star": "星标", "Star selected message": "星标选中的信息", @@ -1024,8 +1080,10 @@ "Subscribe": "订阅", "Subscribe them": "订阅他们", "Subscribe to/unsubscribe from selected stream": "订阅/取消订阅所选频道", + "Subscribe {full_name} to streams": "", "Subscribed": "已订阅", "Subscribed streams": "订阅频道", + "Subscribed successfully!": "订阅成功", "Subscriber count": "订阅者数量", "Subscribers": "订阅者", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "目前没有警示词。", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "建议升级 Zulip 服务器到最新版。", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "这不是一个可公开访问对话。", "This is what a Zulip notification looks like.": "这就是 Zulip 通知的样子。", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "此消息已隐藏,因为您已将发件人设为静音。", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "时区", "Time's up!": "时间到了!", "Tip: You can also send \"/poll Some question\"": "提示:你还可以发送\"/poll 一些问题\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "要将语法高亮添加到多行代码块,请添加语言的第一个Pygments 短名称在第一组反引号之后。您还可以通过将每行缩进 4 个空格来制作代码块。", "To invite users, please increase the number of licenses or deactivate inactive users.": "要邀请用户,请增加许可证数量要么停用非活动用户.", "To preserve your reading state, this view does not mark messages as read.": "为了保留您的阅读状态,此视图不会将邮件标记为已读。", "Today": "今日", @@ -1112,7 +1170,6 @@ "Toggle subscription": "触发订阅", "Toggle the gear menu": "切换齿轮菜单", "Toggle topic mute": "切换主题静音", - "Tomorrow": "明天", "Tomorrow at {time}": "", "Topic": "话题", "Topic muted": "免打扰话题", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "两步验证", "Type": "类型", + "URL": "", + "URL for your integration": "", "URL pattern": "网址格式", - "URL prefix": "网址前缀", "URL template": "", "USERS": "用户", "Uncheck all": "全部不选", @@ -1139,6 +1197,7 @@ "Unmute this user": "取消静音此用户", "Unmute topic": "非静音主题", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "从顶部取消固定频道", "Unread": "未读", "Unread count badge (appears in desktop sidebar and browser tab)": "未读计数徽章(出现在桌面侧边栏和浏览器选项卡中)", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "查看草稿", - "View edit history": "显示编辑历史 ", + "View edit and move history": "", "View file": "显示文件", "View in playground": "在代码游乐场查看", "View in {name}": "在 {name} 中查看", @@ -1208,7 +1267,7 @@ "View messages sent": "显示已发送消息", "View messages with yourself": "", "View profile": "", - "View read receipts": "", + "View read receipts": "查看阅读回执", "View recent conversations": "", "View scheduled messages": "", "View stream": "显示频道", @@ -1227,9 +1286,10 @@ "Web-public": "网络公开", "Wednesday": "星期三", "Week of {date}": "{date} 周", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "欢迎回来!您有{unread_msgs_count}未读消息。您想将它们全部标记为已读吗?", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "当您停用,他们将立即被注销。", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "出于通知的目的,是否将诸如 @all 之类的通配符提及视为提及。", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "谁可以访问频道?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "谁可以创建和管理用户组", "Who can create private streams": "谁可以创建私人信息频道", "Who can create public streams": "谁可以创建公共信息频道", + "Who can create reusable invitation links": "", "Who can create web-public streams": "谁可以创建网络公共频道", "Who can delete their own messages": "谁可以删除自己的消息", - "Who can invite users to this organization": "谁可以邀请用户加入此社群", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "谁可以发布到信息频道?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "谁可以在大型频道中使用@all/@everyone 提及", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "收信人", "You and {display_reply_to}": "你和{display_reply_to}", "You and {recipients}": "你和{recipients}", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "您目前未订阅此频道。", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "您正在向已解决的主题发送消息。您可以按原样发送或先取消解决主题。", "You are using an old version of the Zulip desktop app with known security bugs.": "您正在使用具有已知安全漏洞的旧版 Zulip 桌面应用程序。", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "您没有订阅该频道,也没有人讨论过相关内容", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "你也可以制作有了这个Markdown-ish 表格语法.", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "您可以通过在该组织中创建一个 Zulip 帐户来完全访问该社区并参与对话。", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "您无权在此信息频道中使用通配符提及。", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "结果", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "你已静音.", + "You have muted this topic": "", "You have no active bots.": "你没有可用的机器人。", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "您尚未将任何用户静音。", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "目前没有上传任何文件。", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "你没有被提到", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "您必须是社群管理员才能在不订阅的情况下创建频道", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "您需要运行Zephyr镜像服务以便发送消息!", "You searched for:": "您搜索的:", "You subscribed to stream ": "", "You type": "输入", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "您没有订阅这个频道。如果其他用户回复您的邮件,您将不会收到通知。", "Your API key:": "您的 API Key:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip需要发送电子邮箱确认用户地址并发送通知", "Zulip needs your permission to enable desktop notifications.": "Zulip 需要您的许可启用桌面通知。", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "Zulip 的翻译由我们惊人的志愿者翻译社区贡献。如果您想提供帮助,请参阅Zulip 翻译指南.", "[Configure]": "[配置]", - "[Disable]": "[禁用]", - "[More…]": "[展开消息…]", "[Quoting…]": "[引用…]", - "[Unset]": "[未设置]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "和 {remaining_senders, plural, one {1 其他} other {# 其他}}。", "back to streams": "", "beta": "测试版", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1小时内", - "in 20 minutes": "20分钟内", - "in 3 hours": "3小时内", "invisible mode off": "", "leafy green vegetable": "绿叶蔬菜", "marketing": "销售", "more conversations": "更多会话", "more topics": "更多话题", - "or": "或", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} 天前", "{full_name} is typing…": "{full_name} 正在输入...", "{hours} hours ago": "{hours} 小时前", - "{items_selected} selected": "{items_selected} 已选择", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "{minutes} 分钟编辑", "{minutes} minutes ago": "{minutes} 分钟前", "{modal_heading_text}": "", - "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", + "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {此消息已被{num_of_people}人阅读:}}", "{seconds} sec to edit": "{seconds} 秒编辑", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "{username} [发言道]({link_to_message}):", "{username} reacted with {emoji_name}": "{username} 已添加 {emoji_name} " diff --git a/locale/zh_Hant/LC_MESSAGES/django.po b/locale/zh_Hant/LC_MESSAGES/django.po index 77885cc882..b5318eb93b 100644 --- a/locale/zh_Hant/LC_MESSAGES/django.po +++ b/locale/zh_Hant/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Ivan Lau , 2020\n" "Language-Team: Chinese Traditional (http://app.transifex.com/zulip/zulip/language/zh-Hant/)\n" @@ -20,46 +20,47 @@ msgstr "" "Language: zh-Hant\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "不允許訪客使用者" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "無效組織" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "公開頻道" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "私人頻道" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "未知圖片名稱:{}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "開始時間比完結時間更遲。開始:{start},完結:{end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "沒有可用分析數據。請聯繫您的伺服器管理員。" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "" @@ -120,29 +121,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:117 +#: corporate/lib/stripe.py:119 +#, python-brace-format msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "發生錯誤,請聯絡 {email} 。" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "發生錯誤,請重新整理此頁。" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "發生錯誤,請稍後數秒再試。" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -174,7 +177,7 @@ msgstr "" msgid "Unable to update the plan. The plan has ended." msgstr "" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -190,14 +193,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -209,7 +212,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -259,7 +262,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -561,9 +564,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -581,9 +584,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -593,9 +596,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -858,51 +861,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "用%(identity_provider)s註冊" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "感謝註冊!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "沒有收到信件嗎?點擊重新發送。" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "也有可能在您的垃圾收件夾中。" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "重新連線" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "訊息" @@ -1150,6 +1153,159 @@ msgstr "一般使用者" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1157,6 +1313,39 @@ msgstr "" msgid "Hi," msgstr "" +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1170,22 +1359,9 @@ msgstr "" msgid "Confirm email change" msgstr "確認更改電郵地址" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1240,17 +1416,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1355,225 +1520,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1658,14 +1604,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1697,21 +1643,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1719,21 +1689,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1776,29 +1746,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "" @@ -1961,6 +1931,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1989,6 +1967,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2377,7 +2427,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2877,290 +2927,293 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" #: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" +#, python-brace-format +msgid "Flag not editable: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 +msgid "A custom emoji with this name already exists." msgstr "" -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 -msgid "A custom emoji with this name already exists." +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" msgstr "" #: zerver/actions/scheduled_messages.py:42 @@ -3176,8 +3229,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3196,18 +3249,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3216,38 +3283,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "" -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3257,56 +3324,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "" @@ -3321,94 +3391,100 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 @@ -3473,31 +3549,31 @@ msgstr "" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3530,166 +3606,166 @@ msgstr "" msgid "Account has been deactivated." msgstr "" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3697,6 +3773,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3738,7 +3822,7 @@ msgid "Settings" msgstr "設定" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3751,264 +3835,272 @@ msgid "" "and give it a go!" msgstr "" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "" -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "" -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "" -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4023,669 +4115,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "" -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" -msgstr "" - -#: zerver/lib/subscription_info.py:295 -msgid "Subscriber data is not available for this stream" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" #: zerver/lib/subscription_info.py:302 +msgid "Subscriber data is not available for this stream" +msgstr "" + +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "公開" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "自訂表情" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4753,66 +4934,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." +#: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." msgstr "" -#: zerver/views/invite.py:87 +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4820,22 +5034,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4851,26 +5066,27 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" msgstr "" #: zerver/views/push_notifications.py:19 @@ -4887,36 +5103,36 @@ msgid "" "emoji_code" msgstr "" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" +#, python-brace-format +msgid "Invalid domain: {error}" msgstr "" #: zerver/views/realm_domains.py:39 @@ -4929,42 +5145,43 @@ msgstr "" msgid "No entry found for domain {domain}." msgstr "" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4972,7 +5189,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4980,107 +5197,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "" -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "已有頻道使用此名稱" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "" -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "" -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "" -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "" -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5096,97 +5306,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "" @@ -5233,6 +5454,10 @@ msgstr "" msgid "Username already in use" msgstr "" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5243,7 +5468,8 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" +#, python-brace-format +msgid "Email '{email}' already in use" msgstr "" #: zerver/views/video_calls.py:47 @@ -5262,27 +5488,27 @@ msgstr "" msgid "Invalid Zoom credentials" msgstr "" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5302,28 +5528,28 @@ msgstr "" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5342,7 +5568,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5350,19 +5576,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5379,47 +5606,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "" -#: zilencer/views.py:370 -msgid "Invalid property {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "" diff --git a/locale/zh_Hant/translations.json b/locale/zh_Hant/translations.json index e65d2f83d3..e9ce1592a4 100644 --- a/locale/zh_Hant/translations.json +++ b/locale/zh_Hant/translations.json @@ -5,6 +5,7 @@ "(hidden)": "", "(no description)": "", "(no topic)": "", + "(or )": "", "(you)": "", "({message_retention_days} days)": "", "/dark (Switch to the dark theme)": "", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "", "Add all users": "", "Add another user...": "新增另一位使用者", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "添加表情", "Add emoji reaction": "", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "", - "Add new default stream": "", "Add new user group": "", "Add one or more users": "新增單個或多個使用者", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "", "Add video call": "新增視訊通話", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "", "Added successfully.": "", "Administrator": "", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "全部", "All direct messages": "", + "All groups": "", "All messages": "所有訊息", "All messages including muted streams": "", "All streams": "全部頻道", @@ -136,9 +142,11 @@ "Allow subdomains": "", "Allowed domains": "", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "", "Bots": "機器人", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "", "Busy": "", "By deactivating your account, you will be logged out immediately.": "", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "關閉", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "", "Compact": "", "Complete": "", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "在這裡輸入您的訊息", "Compose your message here...": "在這裡輸入您的訊息...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "", "Cookie Bot": "", "Copied!": "", + "Copy URL": "", "Copy address": "", "Copy and close": "", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "", + "Custom URL": "", "Custom emoji": "自訂表情", "Custom language: {query}": "", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "", "Deactivated users": "", "December": "", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "預設頻道", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "Delete", "Delete alert word": "", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "", "Delete file": "", "Delete file?": "", + "Delete group": "", "Delete icon": "", "Delete linkifier?": "", "Delete logo": "", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "", "Description": "描述", + "Deselect draft": "", "Desktop": "", "Desktop & mobile apps": "", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "已關閉", "Discard": "", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "顯示設定", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "", "Don’t allow disposable email addresses": "", "Download": "下載", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "編輯訊息", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "編輯草稿", "Edit selected message or view source": "", "Edit status": "", @@ -398,7 +423,6 @@ "Edit your last message": "編輯上一則訊息", "Edit your profile": "", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "", "Edited by {full_name}": "", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "", "External link": "", "Failed": "", + "Failed adding one or more streams.": "", "Failed to create video call.": "", "Failed to generate preview": "", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "", "Filter groups": "", "Filter invites": "", - "Filter languages": "", "Filter linkifiers": "", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "篩選頻道", "Filter subscribers": "", "Filter topics": "", @@ -500,6 +523,9 @@ "First message": "第一則訊息", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "", "General": "General", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "產生邀請連結", "Generate new API key": "", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "人類", "Idle": "閒置", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "", "In a meeting": "", "Inactive": "", "Inactive bots": "", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "", "Initiate a search": "開始搜尋", "Insert new line": "插入新一行", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "應用整合", "Interface": "", "Invalid URL": "", @@ -581,6 +614,8 @@ "Inviting...": "正在傳送邀請", "Italic": "", "January": "", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "", @@ -599,8 +634,10 @@ "Last 30 days": "", "Last 6 months": "", "Last active": "", + "Last edited {last_edit_timestr}": "", "Last message": "最後一則訊息", "Last modified": "", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "登出", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "管理頻道", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "", "Mentions": "", - "Menu": "功能表", "Menus": "", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "關閉頻道通知", "Mute this user": "", "Mute topic": "關閉頻道通知", @@ -734,38 +773,42 @@ "New password is too weak": "", "New stream announcements": "", "New stream message": "頻道中的新訊息", + "New stream notifications": "", "New task": "", "New topic": "新主題", "New user announcements": "", + "New user notifications": "", "Next message": "下一則訊息", "Next unread direct message": "", "Next unread topic": "下一個未讀主題", - "Next week": "", "No bots match your current filter.": "", + "No conversations match your filters.": "", "No custom emoji.": "", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "", "No description.": "", + "No drafts selected": "", "No drafts.": "", "No exports.": "", "No invites match your current filter.": "", "No language set": "", "No linkifiers set.": "", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "", "No playgrounds configured.": "", "No restrictions": "", "No scheduled messages.": "", - "No search results": "無搜尋結果", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "", "No users match your current filter.": "", + "No users to add.": "", "No, I'll catch up.": "否,確認未讀訊息。", "Nobody": "", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "", + "Numbered list": "", "October": "", "Old password": "", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "打開", "Open message menu": "", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "", "Prevent users from changing their avatar": "", "Prevent users from changing their email address": "", @@ -869,6 +915,7 @@ "Previous message": "上一則訊息", "Privacy": "", "Privacy settings": "", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "已儲存爲草稿", "Saved. Please reload for the change to take effect.": "", "Saving": "", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "查看如何設定電子郵件。", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "發送", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "", "Show starred message count": "", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "", "Sign up": "註冊", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "", "Sort by name": "", "Sort by number of subscribers": "", + "Sort by unread message count": "", "Spoiler": "", "Star": "", "Star selected message": "標記此訊息", @@ -1024,8 +1080,10 @@ "Subscribe": "訂閱", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "訂閱/取消訂閱選定的頻道", + "Subscribe {full_name} to streams": "", "Subscribed": "已訂閱", "Subscribed streams": "目前訂閱的頻道", + "Subscribed successfully!": "", "Subscriber count": "", "Subscribers": "", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "", "Time's up!": "", "Tip: You can also send \"/poll Some question\"": "", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "", @@ -1112,7 +1170,6 @@ "Toggle subscription": "", "Toggle the gear menu": "", "Toggle topic mute": "", - "Tomorrow": "", "Tomorrow at {time}": "", "Topic": "主題", "Topic muted": "", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "", "Type": "", + "URL": "", + "URL for your integration": "", "URL pattern": "", - "URL prefix": "", "URL template": "", "USERS": "", "Uncheck all": "", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "開啓主題通知", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "", "Unread": "未讀", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "查看草稿", - "View edit history": "", + "View edit and move history": "", "View file": "", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "", "Week of {date}": "", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "收件人", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "結果", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "目前尚無標註你的訊息", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "", "You searched for:": "", "You subscribed to stream ": "", "You type": "輸入", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "", "Your API key:": "", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip需要傳送電子郵件以確認使用者之電郵地址及傳送通知。", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "", - "[Disable]": "", - "[More…]": "", "[Quoting…]": "", - "[Unset]": "", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "", - "in 20 minutes": "", - "in 3 hours": "", "invisible mode off": "", "leafy green vegetable": "", "marketing": "", "more conversations": "", "more topics": "", - "or": "或", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "", "{full_name} is typing…": "", "{hours} hours ago": "", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": "" diff --git a/locale/zh_TW/LC_MESSAGES/django.po b/locale/zh_TW/LC_MESSAGES/django.po index 3ec71c5e5b..00624f74de 100644 --- a/locale/zh_TW/LC_MESSAGES/django.po +++ b/locale/zh_TW/LC_MESSAGES/django.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Zulip\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-31 01:00+0000\n" +"POT-Creation-Date: 2023-10-01 20:54+0000\n" "PO-Revision-Date: 2015-12-06 00:18+0000\n" "Last-Translator: Tim Abbott , 2021-2022\n" "Language-Team: Chinese (Taiwan) (http://app.transifex.com/zulip/zulip/language/zh_TW/)\n" @@ -23,46 +23,47 @@ msgstr "" "Language: zh_TW\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: analytics/views/stats.py:110 zerver/decorator.py:623 -#: zerver/decorator.py:641 +#: analytics/views/stats.py:111 zerver/decorator.py:628 +#: zerver/decorator.py:646 msgid "Not allowed for guest users" msgstr "訪客不允許" -#: analytics/views/stats.py:153 +#: analytics/views/stats.py:154 msgid "Invalid organization" msgstr "無效的組織" -#: analytics/views/stats.py:294 +#: analytics/views/stats.py:295 msgid "Public streams" msgstr "公開串流" -#: analytics/views/stats.py:295 +#: analytics/views/stats.py:296 msgid "Private streams" msgstr "私人串流" -#: analytics/views/stats.py:296 +#: analytics/views/stats.py:297 msgid "Direct messages" msgstr "" -#: analytics/views/stats.py:297 +#: analytics/views/stats.py:298 msgid "Group direct messages" msgstr "" -#: analytics/views/stats.py:318 -msgid "Unknown chart name: {}" -msgstr "未知的 chart 名稱:{}" +#: analytics/views/stats.py:319 +#, python-brace-format +msgid "Unknown chart name: {chart_name}" +msgstr "" -#: analytics/views/stats.py:328 +#: analytics/views/stats.py:329 #, python-brace-format msgid "Start time is later than end time. Start: {start}, End: {end}" msgstr "開始時間晚於結束時間。開始時間:{start}、結束時間:{end}" -#: analytics/views/stats.py:350 analytics/views/stats.py:385 +#: analytics/views/stats.py:351 analytics/views/stats.py:386 msgid "No analytics data available. Please contact your server administrator." msgstr "沒有分析資料。請聯繫您的伺服器管理員。" -#: analytics/views/support.py:189 zerver/views/streams.py:304 -#: zerver/views/streams.py:308 zerver/views/streams.py:316 +#: analytics/views/support.py:189 zerver/views/streams.py:290 +#: zerver/views/streams.py:294 zerver/views/streams.py:302 msgid "Invalid parameters" msgstr "無效參數" @@ -123,29 +124,31 @@ msgid "" msgstr "" #: corporate/lib/stripe.py:112 -msgid "You must invoice for at least {} users." -msgstr "您必須 invoice for 至少 {} 使用者。" - -#: corporate/lib/stripe.py:117 -msgid "" -"Invoices with more than {} licenses can't be processed from this page. To " -"complete the upgrade, please contact {}." +#, python-brace-format +msgid "You must invoice for at least {min_licenses} users." msgstr "" -#: corporate/lib/stripe.py:225 +#: corporate/lib/stripe.py:119 +#, python-brace-format +msgid "" +"Invoices with more than {max_licenses} licenses can't be processed from this" +" page. To complete the upgrade, please contact {email}." +msgstr "" + +#: corporate/lib/stripe.py:227 #, python-brace-format msgid "Something went wrong. Please contact {email}." msgstr "付款失敗,請聯絡 {email}" -#: corporate/lib/stripe.py:226 +#: corporate/lib/stripe.py:228 msgid "Something went wrong. Please reload the page." msgstr "發生錯誤。請重新更新頁面。" -#: corporate/lib/stripe.py:300 +#: corporate/lib/stripe.py:302 msgid "Something went wrong. Please wait a few seconds and try again." msgstr "發生錯誤。請稍待數秒後再試一次。" -#: corporate/lib/stripe.py:1015 +#: corporate/lib/stripe.py:1014 #, python-brace-format msgid "" "Your organization's request for sponsored hosting has been approved! You have been upgraded to {plan_name}, free of charge. {emoji}\n" @@ -177,7 +180,7 @@ msgstr "無法更新方案。該方案已經過期並由新方案取代。" msgid "Unable to update the plan. The plan has ended." msgstr "無法更新方案。該方案已經結束。" -#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:253 +#: corporate/views/billing_page.py:225 corporate/views/billing_page.py:251 msgid "" "Unable to update licenses manually. Your plan is on automatic license " "management." @@ -193,14 +196,14 @@ msgstr "" msgid "You cannot decrease the licenses in the current billing period." msgstr "" -#: corporate/views/billing_page.py:259 +#: corporate/views/billing_page.py:257 #, python-brace-format msgid "" "Your plan is already scheduled to renew with {licenses_at_next_renewal} " "licenses." msgstr "" -#: corporate/views/billing_page.py:273 +#: corporate/views/billing_page.py:271 msgid "Nothing to change." msgstr "" @@ -212,7 +215,7 @@ msgstr "" msgid "Session not found" msgstr "" -#: corporate/views/event_status.py:37 zerver/decorator.py:196 +#: corporate/views/event_status.py:37 zerver/decorator.py:197 msgid "Must be a billing administrator or an organization owner" msgstr "" @@ -262,7 +265,7 @@ msgid "" msgstr "" #: templates/500.html:4 templates/500.html:21 -#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:433 +#: zerver/actions/scheduled_messages.py:411 zerver/middleware.py:403 msgid "Internal server error" msgstr "" @@ -564,9 +567,9 @@ msgstr "" #: templates/corporate/for/events.html:34 #: templates/corporate/for/events.html:288 #: templates/corporate/for/open-source.html:36 -#: templates/corporate/for/open-source.html:720 +#: templates/corporate/for/open-source.html:734 #: templates/corporate/for/research.html:36 -#: templates/corporate/for/research.html:402 +#: templates/corporate/for/research.html:416 #: templates/corporate/for/use-cases.html:23 #: templates/zerver/create_realm.html:38 msgid "Create organization" @@ -584,9 +587,9 @@ msgstr "" #: templates/corporate/for/events.html:40 #: templates/corporate/for/events.html:294 #: templates/corporate/for/open-source.html:42 -#: templates/corporate/for/open-source.html:726 +#: templates/corporate/for/open-source.html:740 #: templates/corporate/for/research.html:42 -#: templates/corporate/for/research.html:408 +#: templates/corporate/for/research.html:422 #: templates/corporate/for/use-cases.html:29 msgid "Self-host Zulip" msgstr "" @@ -596,9 +599,9 @@ msgstr "" #: templates/corporate/for/events.html:37 #: templates/corporate/for/events.html:291 #: templates/corporate/for/open-source.html:39 -#: templates/corporate/for/open-source.html:723 +#: templates/corporate/for/open-source.html:737 #: templates/corporate/for/research.html:39 -#: templates/corporate/for/research.html:405 +#: templates/corporate/for/research.html:419 msgid "Request sponsorship" msgstr "" @@ -861,51 +864,51 @@ msgid "Sign up with %(identity_provider)s" msgstr "用 %(identity_provider)s 登入" #: templates/zerver/accounts_send_confirm.html:5 +#: templates/zerver/accounts_send_confirm.html:17 msgid "Confirm your email address" msgstr "" -#: templates/zerver/accounts_send_confirm.html:17 -msgid "Thanks for signing up!" -msgstr "感謝註冊!" - #: templates/zerver/accounts_send_confirm.html:21 #, python-format msgid "" -"Check your email (%(email)s) so " -"we can get started." +"To complete your registration, check your email account (%(email)s) for a confirmation email " +"from Zulip." msgstr "" #: templates/zerver/accounts_send_confirm.html:25 -msgid "Still no email? We can resend it." -msgstr "還是沒收到 email?我們可以重新寄送。" - -#: templates/zerver/accounts_send_confirm.html:26 -msgid "Just in case, take a look at your Spam folder." -msgstr "請確認一下您的垃圾信件夾。" - -#: templates/zerver/app/index.html:121 msgid "" -"If this message does not go away, try reloading the" -" page." +"If you don't see a confirmation email in your Inbox or Spam folder, we can " +"resend it." msgstr "" -#: templates/zerver/app/index.html:164 +#: templates/zerver/app/index.html:128 +msgid "" +"If this message does not go away, try reloading " +"the page." +msgstr "" + +#: templates/zerver/app/index.html:131 +msgid "Error loading Zulip. Try reloading the page." +msgstr "" + +#: templates/zerver/app/index.html:174 msgid "Unable to connect to Zulip." msgstr "" -#: templates/zerver/app/index.html:165 +#: templates/zerver/app/index.html:175 msgid "Updates may be delayed." msgstr "" -#: templates/zerver/app/index.html:166 +#: templates/zerver/app/index.html:176 msgid "Retrying soon…" msgstr "" -#: templates/zerver/app/index.html:167 +#: templates/zerver/app/index.html:177 msgid "Try now." msgstr "立即重試。" -#: templates/zerver/app/index.html:241 templates/zerver/app/index.html:243 +#: templates/zerver/app/index.html:257 templates/zerver/app/index.html:259 msgid "Messages" msgstr "訊息" @@ -1153,6 +1156,159 @@ msgstr "普通使用者" msgid "Digest" msgstr "" +#: templates/zerver/emails/account_registered.html:11 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip demo organization. Note\n" +" that this organization will be automatically deleted in 30 days. Learn more\n" +" about demo organizations here!\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:19 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip\n" +" organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.html:24 +#: templates/zerver/emails/account_registered.txt:1 +msgid "Welcome to Zulip!" +msgstr "歡迎來到 Zulip!" + +#: templates/zerver/emails/account_registered.html:26 +#, python-format +msgid "" +"You've joined the Zulip organization %(realm_name)s.\n" +" " +msgstr "" + +#: templates/zerver/emails/account_registered.html:32 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and desktop apps:" +msgstr "" + +#: templates/zerver/emails/account_registered.html:34 +#: templates/zerver/emails/account_registered.txt:16 +#, python-format +msgid "Organization URL: %(organization_url)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:37 +#: templates/zerver/emails/account_registered.txt:20 +#, python-format +msgid "Your username: %(ldap_username)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:39 +#: templates/zerver/emails/account_registered.txt:22 +msgid "Use your LDAP account to log in" +msgstr "" + +#: templates/zerver/emails/account_registered.html:42 +#: templates/zerver/emails/account_registered.txt:25 +#, python-format +msgid "Your account email: %(email)s" +msgstr "" + +#: templates/zerver/emails/account_registered.html:45 +msgid "Go to organization" +msgstr "" + +#: templates/zerver/emails/account_registered.html:49 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide!" +msgstr "" + +#: templates/zerver/emails/account_registered.html:51 +#, python-format +msgid "" +"We also have a guide for Setting up your " +"organization." +msgstr "" + +#: templates/zerver/emails/account_registered.html:57 +#, python-format +msgid "" +"Questions? Contact us — we'd love " +"to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:2 +#, python-format +msgid "%(realm_name)s on Zulip: Your new organization details" +msgstr "" + +#: templates/zerver/emails/account_registered.subject.txt:4 +#, python-format +msgid "%(realm_name)s on Zulip: Your new account details" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:5 +#, python-format +msgid "" +" Congratulations, you have created a new demo Zulip organization. Note that " +"this organization will be automatically deleted in 30 days. Learn more about" +" demo organizations here: %(demo_organizations_help_link)s!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:7 +#, python-format +msgid "" +"Congratulations, you have created a new Zulip organization: %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:10 +#, python-format +msgid "You've joined the Zulip organization %(realm_name)s." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:14 +#, python-format +msgid "" +"You will use the following info to log into the Zulip web, mobile and " +"desktop apps (%(apps_page_link)s):" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:29 +#, python-format +msgid "" +"If you are new to Zulip, check out our Getting started guide " +"(%(getting_user_started_link)s)!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:31 +#, python-format +msgid "" +" We also have a guide for Setting up your organization " +"(%(getting_organization_started_link)s)." +msgstr "" + +#: templates/zerver/emails/account_registered.txt:36 +#, python-format +msgid "Questions? Contact us at %(support_email)s — we'd love to help!" +msgstr "" + +#: templates/zerver/emails/account_registered.txt:38 +#: templates/zerver/emails/confirm_registration.txt:17 +#: templates/zerver/emails/invitation.txt:11 +#: templates/zerver/emails/onboarding_zulip_guide.txt:23 +#: templates/zerver/emails/realm_reactivation.txt:16 +#, python-format +msgid "" +"If you have any questions, please contact this Zulip server's administrators" +" at %(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:8 +#: templates/zerver/emails/confirm_demo_organization_email.txt:1 #: templates/zerver/emails/confirm_new_email.html:8 #: templates/zerver/emails/confirm_new_email.txt:1 #: templates/zerver/emails/notify_change_in_email.html:8 @@ -1160,6 +1316,39 @@ msgstr "" msgid "Hi," msgstr "嗨," +#: templates/zerver/emails/confirm_demo_organization_email.html:10 +#: templates/zerver/emails/confirm_demo_organization_email.txt:4 +#, python-format +msgid "" +"We received a request to add the email address %(new_email)s to your Zulip " +"demo organization account on %(realm_uri)s. To confirm this update and set a" +" password for this account, please click below:" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:11 +msgid "Confirm and set password" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.html:13 +#: templates/zerver/emails/confirm_new_email.html:13 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"%(support_email)s." +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.subject.txt:1 +msgid "Verify your new email address for your demo Zulip organization" +msgstr "" + +#: templates/zerver/emails/confirm_demo_organization_email.txt:9 +#: templates/zerver/emails/confirm_new_email.txt:9 +#, python-format +msgid "" +"If you did not request this change, please contact us immediately at " +"<%(support_email)s>." +msgstr "" + #: templates/zerver/emails/confirm_new_email.html:10 #: templates/zerver/emails/confirm_new_email.txt:4 #, python-format @@ -1173,22 +1362,9 @@ msgstr "" msgid "Confirm email change" msgstr "確認E-mail變更" -#: templates/zerver/emails/confirm_new_email.html:13 -#, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"%(support_email)s." -msgstr "" - #: templates/zerver/emails/confirm_new_email.subject.txt:1 -msgid "Verify your new email address" -msgstr "驗證您的新 email 地址" - -#: templates/zerver/emails/confirm_new_email.txt:9 #, python-format -msgid "" -"If you did not request this change, please contact us immediately at " -"<%(support_email)s>." +msgid "Verify your new email address for %(organization_host)s" msgstr "" #: templates/zerver/emails/confirm_registration.html:10 @@ -1243,17 +1419,6 @@ msgid "" "— we'd love to help!" msgstr "" -#: templates/zerver/emails/confirm_registration.txt:17 -#: templates/zerver/emails/followup_day1.txt:38 -#: templates/zerver/emails/invitation.txt:11 -#: templates/zerver/emails/onboarding_zulip_guide.txt:23 -#: templates/zerver/emails/realm_reactivation.txt:16 -#, python-format -msgid "" -"If you have any questions, please contact this Zulip server's administrators" -" at %(support_email)s." -msgstr "" - #: templates/zerver/emails/custom_email_base.pre.html:18 #: templates/zerver/emails/digest.html:39 #: templates/zerver/emails/notify_new_login.html:46 @@ -1358,225 +1523,6 @@ msgid "" "organizations hosted by %(external_host)s:" msgstr "" -#: templates/zerver/emails/followup_day1.html:11 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip demo organization. Note\n" -" that this organization will be automatically deleted in 30 days. Learn more\n" -" about demo organizations here!\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:19 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip\n" -" organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:24 -#: templates/zerver/emails/followup_day1.txt:1 -msgid "Welcome to Zulip!" -msgstr "歡迎來到 Zulip!" - -#: templates/zerver/emails/followup_day1.html:26 -#, python-format -msgid "" -"You've joined the Zulip organization %(realm_name)s.\n" -" " -msgstr "" - -#: templates/zerver/emails/followup_day1.html:32 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and desktop apps:" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:34 -#: templates/zerver/emails/followup_day1.txt:16 -#, python-format -msgid "Organization URL: %(organization_url)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:37 -#: templates/zerver/emails/followup_day1.txt:20 -#, python-format -msgid "Your username: %(ldap_username)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:39 -#: templates/zerver/emails/followup_day1.txt:22 -msgid "Use your LDAP account to log in" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:42 -#: templates/zerver/emails/followup_day1.txt:25 -#, python-format -msgid "Your account email: %(email)s" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:45 -msgid "Go to organization" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:49 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide!" -msgstr "" - -#: templates/zerver/emails/followup_day1.html:51 -#, python-format -msgid "" -"We also have a guide for Setting up your " -"organization." -msgstr "" - -#: templates/zerver/emails/followup_day1.html:57 -#, python-format -msgid "" -"Questions? Contact us — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:2 -#, python-format -msgid "%(realm_name)s on Zulip: Your new organization details" -msgstr "" - -#: templates/zerver/emails/followup_day1.subject.txt:4 -#, python-format -msgid "%(realm_name)s on Zulip: Your new account details" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:5 -#, python-format -msgid "" -" Congratulations, you have created a new demo Zulip organization. Note that " -"this organization will be automatically deleted in 30 days. Learn more about" -" demo organizations here: %(demo_organizations_help_link)s!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:7 -#, python-format -msgid "" -"Congratulations, you have created a new Zulip organization: %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:10 -#, python-format -msgid "You've joined the Zulip organization %(realm_name)s." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:14 -#, python-format -msgid "" -"You will use the following info to log into the Zulip web, mobile and " -"desktop apps (%(apps_page_link)s):" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:29 -#, python-format -msgid "" -"If you are new to Zulip, check out our Getting started guide " -"(%(getting_user_started_link)s)!" -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:31 -#, python-format -msgid "" -" We also have a guide for Setting up your organization " -"(%(getting_organization_started_link)s)." -msgstr "" - -#: templates/zerver/emails/followup_day1.txt:36 -#, python-format -msgid "Questions? Contact us at %(support_email)s — we'd love to help!" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:9 -#: templates/zerver/emails/followup_day2.txt:1 -msgid "" -"Here are some tips for keeping your Zulip conversations organized with " -"topics." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell " -"you what the message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:13 -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"Using topics, you can read Zulip one conversation at a time. You'll see each" -" message in context, no matter how many different discussions are going on." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:16 -msgid "Streams and topics in the Zulip app" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:19 -#: templates/zerver/emails/followup_day2.txt:5 -msgid "" -"To kick off a new conversation, just pick a stream and start a new topic. " -"This way, the new conversation thread won't interrupt ongoing discussions. " -"For a good topic name, think about finishing the sentence: “Hey, can we chat" -" about…?”" -msgstr "" - -#: templates/zerver/emails/followup_day2.html:22 -msgid "Examples of short topics" -msgstr "簡短主題的例子" - -#: templates/zerver/emails/followup_day2.html:25 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move " -"messages, rename topics, or even " -"move a topic to a " -"different stream." -msgstr "" - -#: templates/zerver/emails/followup_day2.html:28 -#: templates/zerver/emails/followup_day2.txt:10 -#: templates/zerver/portico-header-dropdown.html:3 -msgid "Go to Zulip" -msgstr "回到 Zulip" - -#: templates/zerver/emails/followup_day2.html:34 -#: templates/zerver/emails/followup_day2.txt:14 -#: templates/zerver/emails/onboarding_zulip_guide.html:40 -#: templates/zerver/emails/onboarding_zulip_guide.txt:27 -#, python-format -msgid "Unsubscribe from welcome emails for %(realm_name)s" -msgstr "" - -#: templates/zerver/emails/followup_day2.subject.txt:1 -msgid "Keep your conversations organized with topics" -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:3 -msgid "" -"In Zulip, streams determine who gets a message. Topics tell you what the " -"message is about." -msgstr "" - -#: templates/zerver/emails/followup_day2.txt:7 -#, python-format -msgid "" -"Don't stress about picking the perfect name for your topic. If anything is " -"out of place, it's easy to move messages (%(move_messages_link)s), rename " -"topics (%(rename_topics_link)s), or even move a topic to a different stream " -"(%(move_topic_to_different_stream_link)s)." -msgstr "" - #: templates/zerver/emails/invitation.html:9 #: templates/zerver/emails/invitation.txt:1 msgid "Hi there," @@ -1661,14 +1607,14 @@ msgstr "" #, python-format msgid "" "If you have any questions, please contact this Zulip server's administrators" -" at %(email)s." +" at %(email)s." msgstr "" #: templates/zerver/emails/macros.html:18 #, python-format msgid "" -"Do you have questions or feedback to share? Contact " -"us — we'd love to help!" +"Do you have questions or feedback to share? Contact us — we'd love to help!" msgstr "" #: templates/zerver/emails/missed_message.html:17 @@ -1700,21 +1646,45 @@ msgid "" msgstr "" #: templates/zerver/emails/missed_message.html:33 +#: templates/zerver/emails/missed_message.html:37 #: templates/zerver/emails/missed_message.txt:29 +#: templates/zerver/emails/missed_message.txt:33 +#, python-format +msgid "" +"You are receiving this because all topic participants were mentioned in " +"#%(stream_name)s > %(topic_name)s." +msgstr "" + +#: templates/zerver/emails/missed_message.html:35 +#: templates/zerver/emails/missed_message.txt:31 +msgid "" +"You are receiving this because you have wildcard mention notifications " +"enabled for topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:39 +#: templates/zerver/emails/missed_message.txt:35 #, python-format msgid "" "You are receiving this because everyone was mentioned in #%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:35 -#: templates/zerver/emails/missed_message.txt:31 +#: templates/zerver/emails/missed_message.html:41 +#: templates/zerver/emails/missed_message.txt:37 +msgid "" +"You are receiving this because you have email notifications enabled for " +"topics you follow." +msgstr "" + +#: templates/zerver/emails/missed_message.html:43 +#: templates/zerver/emails/missed_message.txt:39 #, python-format msgid "" "You are receiving this because you have email notifications enabled for " "#%(stream_name)s." msgstr "" -#: templates/zerver/emails/missed_message.html:38 +#: templates/zerver/emails/missed_message.html:46 #, python-format msgid "" "Reply to this email directly, view it in " @@ -1722,21 +1692,21 @@ msgid "" "preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:40 +#: templates/zerver/emails/missed_message.html:48 #, python-format msgid "" "View or reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:42 +#: templates/zerver/emails/missed_message.html:50 #, python-format msgid "" "Reply in %(realm_name)s Zulip, or manage email preferences." msgstr "" -#: templates/zerver/emails/missed_message.html:44 +#: templates/zerver/emails/missed_message.html:52 #, python-format msgid "" "\n" @@ -1779,29 +1749,29 @@ msgid "" "See %(alert_notif_url)s for more details.\n" msgstr "" -#: templates/zerver/emails/missed_message.txt:35 +#: templates/zerver/emails/missed_message.txt:43 #, python-format msgid "Reply to this email directly, or view it in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:39 +#: templates/zerver/emails/missed_message.txt:47 #, python-format msgid "View or reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:43 +#: templates/zerver/emails/missed_message.txt:51 #, python-format msgid "Reply in %(realm_name)s Zulip:" msgstr "" -#: templates/zerver/emails/missed_message.txt:47 +#: templates/zerver/emails/missed_message.txt:55 msgid "" "\n" "Do not reply to this email. This Zulip server is not configured to accept\n" "incoming emails. Help:\n" msgstr "\n請勿回覆此email。Zulip伺服器並不接收email。幫助文章:\n" -#: templates/zerver/emails/missed_message.txt:54 +#: templates/zerver/emails/missed_message.txt:62 msgid "Manage email preferences: " msgstr "管理 email 偏好:" @@ -1964,6 +1934,14 @@ msgstr "" msgid "View Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_guide.html:40 +#: templates/zerver/emails/onboarding_zulip_guide.txt:27 +#: templates/zerver/emails/onboarding_zulip_topics.html:34 +#: templates/zerver/emails/onboarding_zulip_topics.txt:14 +#, python-format +msgid "Unsubscribe from welcome emails for %(realm_name)s" +msgstr "" + #: templates/zerver/emails/onboarding_zulip_guide.subject.txt:2 msgid "Zulip guide for businesses" msgstr "" @@ -1992,6 +1970,78 @@ msgstr "" msgid "Zulip guide for communities" msgstr "" +#: templates/zerver/emails/onboarding_zulip_topics.html:9 +#: templates/zerver/emails/onboarding_zulip_topics.txt:1 +msgid "" +"Here are some tips for keeping your Zulip conversations organized with " +"topics." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell " +"you what the message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:13 +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"Using topics, you can read Zulip one conversation at a time. You'll see each" +" message in context, no matter how many different discussions are going on." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:16 +msgid "Streams and topics in the Zulip app" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:19 +#: templates/zerver/emails/onboarding_zulip_topics.txt:5 +msgid "" +"To kick off a new conversation, just pick a stream and start a new topic. " +"This way, the new conversation thread won't interrupt ongoing discussions. " +"For a good topic name, think about finishing the sentence: “Hey, can we chat" +" about…?”" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:22 +msgid "Examples of short topics" +msgstr "簡短主題的例子" + +#: templates/zerver/emails/onboarding_zulip_topics.html:25 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move " +"messages, rename topics, or even " +"move a topic to a " +"different stream." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.html:28 +#: templates/zerver/emails/onboarding_zulip_topics.txt:10 +#: templates/zerver/portico-header-dropdown.html:3 +msgid "Go to Zulip" +msgstr "回到 Zulip" + +#: templates/zerver/emails/onboarding_zulip_topics.subject.txt:1 +msgid "Keep your conversations organized with topics" +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:3 +msgid "" +"In Zulip, streams determine who gets a message. Topics tell you what the " +"message is about." +msgstr "" + +#: templates/zerver/emails/onboarding_zulip_topics.txt:7 +#, python-format +msgid "" +"Don't stress about picking the perfect name for your topic. If anything is " +"out of place, it's easy to move messages (%(move_messages_link)s), rename " +"topics (%(rename_topics_link)s), or even move a topic to a different stream " +"(%(move_topic_to_different_stream_link)s)." +msgstr "" + #: templates/zerver/emails/password_reset.html:9 #: templates/zerver/emails/password_reset.txt:1 #, python-format @@ -2380,7 +2430,7 @@ msgid "Incoming webhooks" msgstr "" #: templates/zerver/integrations/index.html:66 -#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:38 +#: templates/zerver/integrations/index.html:93 zerver/lib/integrations.py:39 msgid "Interactive bots" msgstr "" @@ -2880,292 +2930,295 @@ msgid "" " " msgstr "" -#: zerver/actions/create_user.py:88 +#: zerver/actions/create_user.py:92 msgid "signups" msgstr "註冊" -#: zerver/actions/create_user.py:101 +#: zerver/actions/create_user.py:105 #, python-brace-format msgid "{user} just signed up for Zulip. (total: {user_count})" msgstr "{user} 已在 Zulip 註冊。(總數:{user_count})" -#: zerver/actions/create_user.py:221 +#: zerver/actions/create_user.py:255 #, python-brace-format msgid "{user} accepted your invitation to join Zulip!" msgstr "{user} 已同意您的邀請並加入了 Zulip!" -#: zerver/actions/custom_profile_fields.py:129 +#: zerver/actions/custom_profile_fields.py:126 msgid "Invalid order mapping." msgstr "無效的順序映射" -#: zerver/actions/custom_profile_fields.py:208 zerver/lib/users.py:390 +#: zerver/actions/custom_profile_fields.py:205 zerver/lib/users.py:356 #: zerver/views/custom_profile_fields.py:195 #: zerver/views/custom_profile_fields.py:216 #, python-brace-format msgid "Field id {id} not found." msgstr "找不到欄位 id {id}。" -#: zerver/actions/default_streams.py:21 -msgid "Invalid default stream group name '{}'" -msgstr "無效的預設串流群組名稱 '{}'" +#: zerver/actions/default_streams.py:25 +#, python-brace-format +msgid "Invalid default stream group name '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:24 -msgid "Default stream group name too long (limit: {} characters)" -msgstr "預設串流群組名稱過長(限制:{} 字元)" +#: zerver/actions/default_streams.py:29 +#, python-brace-format +msgid "Default stream group name too long (limit: {max_length} characters)" +msgstr "" -#: zerver/actions/default_streams.py:31 -msgid "Default stream group name '{}' contains NULL (0x00) characters." -msgstr "預設串流群組名稱 '{}' 含有 NULL (0x00) 字元。" +#: zerver/actions/default_streams.py:37 +#, python-brace-format +msgid "" +"Default stream group name '{group_name}' contains NULL (0x00) characters." +msgstr "" -#: zerver/actions/default_streams.py:45 -msgid "Invalid default stream group {}" -msgstr "無效的預設串流群組 {}" +#: zerver/actions/default_streams.py:53 +#, python-brace-format +msgid "Invalid default stream group {group_name}" +msgstr "" -#: zerver/actions/default_streams.py:92 zerver/actions/default_streams.py:119 +#: zerver/actions/default_streams.py:101 zerver/actions/default_streams.py:128 #, python-brace-format msgid "" "'{stream_name}' is a default stream and cannot be added to '{group_name}'" msgstr "'{stream_name}' 是預設串流,不能被加到 '{group_name}'" -#: zerver/actions/default_streams.py:103 +#: zerver/actions/default_streams.py:112 zerver/actions/default_streams.py:173 #, python-brace-format msgid "Default stream group '{group_name}' already exists" msgstr "預設串流群組 '{group_name}' 已存在" -#: zerver/actions/default_streams.py:125 +#: zerver/actions/default_streams.py:134 #, python-brace-format msgid "" "Stream '{stream_name}' is already present in default stream group " "'{group_name}'" msgstr "串流 '{stream_name}' 已經存在於預設串流群組 '{group_name}'" -#: zerver/actions/default_streams.py:141 +#: zerver/actions/default_streams.py:151 #, python-brace-format msgid "" "Stream '{stream_name}' is not present in default stream group '{group_name}'" msgstr "串流 '{stream_name}' 不存在於預設串流群組 '{group_name}'" -#: zerver/actions/default_streams.py:155 -msgid "This default stream group is already named '{}'" -msgstr "此預設串流群組已被更名為 '{}'" +#: zerver/actions/default_streams.py:166 +#, python-brace-format +msgid "This default stream group is already named '{group_name}'" +msgstr "" -#: zerver/actions/default_streams.py:159 -msgid "Default stream group '{}' already exists" -msgstr "預設串流群組 '{}' 已存在" - -#: zerver/actions/invites.py:161 +#: zerver/actions/invites.py:170 msgid "" "To protect users, Zulip limits the number of invitations you can send in one" " day. Because you have reached the limit, no invitations were sent." msgstr "" -#: zerver/actions/invites.py:233 +#: zerver/actions/invites.py:242 msgid "" "Your account is too new to send invites for this organization. Ask an " "organization admin, or a more experienced user." msgstr "您的帳號太新,以至於不能發送此組織的邀請。詢問組織管理者,或是更有經驗的使用者。" -#: zerver/actions/invites.py:273 +#: zerver/actions/invites.py:282 msgid "Some emails did not validate, so we didn't send any invitations." msgstr "部份 emails 尚未驗證,所以我們沒有送出邀請。" -#: zerver/actions/invites.py:281 +#: zerver/actions/invites.py:290 msgid "We weren't able to invite anyone." msgstr "" -#: zerver/actions/invites.py:317 +#: zerver/actions/invites.py:326 msgid "" "Some of those addresses are already using Zulip, so we didn't send them an " "invitation. We did send invitations to everyone else!" msgstr "部份地址已經在 Zulip 使用,所以我們沒送出邀請。除此之外其他部份都已送出!" -#: zerver/actions/message_edit.py:92 zerver/views/scheduled_messages.py:59 +#: zerver/actions/message_edit.py:93 zerver/views/scheduled_messages.py:61 msgid "Nothing to change" msgstr "" -#: zerver/actions/message_edit.py:96 +#: zerver/actions/message_edit.py:97 msgid "Direct messages cannot be moved to streams." msgstr "" -#: zerver/actions/message_edit.py:98 +#: zerver/actions/message_edit.py:99 msgid "Direct messages cannot have topics." msgstr "" -#: zerver/actions/message_edit.py:101 +#: zerver/actions/message_edit.py:102 msgid "Invalid propagate_mode without topic edit" msgstr "無效的非主題編輯 propagate_mode" -#: zerver/actions/message_edit.py:107 +#: zerver/actions/message_edit.py:108 msgid "Cannot change message content while changing stream" msgstr "當改變串流時,無法修改訊息內容" -#: zerver/actions/message_edit.py:111 +#: zerver/actions/message_edit.py:112 msgid "Widgets cannot be edited." msgstr "" -#: zerver/actions/message_edit.py:162 +#: zerver/actions/message_edit.py:163 #, python-brace-format msgid "{user} has marked this topic as resolved." msgstr "" -#: zerver/actions/message_edit.py:164 +#: zerver/actions/message_edit.py:165 #, python-brace-format msgid "{user} has marked this topic as unresolved." msgstr "" -#: zerver/actions/message_edit.py:967 +#: zerver/actions/message_edit.py:991 #, python-brace-format msgid "This topic was moved to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:971 +#: zerver/actions/message_edit.py:995 #, python-brace-format msgid "A message was moved from this topic to {new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:975 +#: zerver/actions/message_edit.py:999 #, python-brace-format msgid "" "{changed_messages_count} messages were moved from this topic to " "{new_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1030 +#: zerver/actions/message_edit.py:1054 #, python-brace-format msgid "This topic was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1035 +#: zerver/actions/message_edit.py:1059 #, python-brace-format msgid "" "[A message]({message_link}) was moved here from {old_location} by {user}." msgstr "" -#: zerver/actions/message_edit.py:1039 +#: zerver/actions/message_edit.py:1063 #, python-brace-format msgid "" "{changed_messages_count} messages were moved here from {old_location} by " "{user}." msgstr "" -#: zerver/actions/message_edit.py:1167 +#: zerver/actions/message_edit.py:1193 msgid "Your organization has turned off message editing" msgstr "您的組織關閉了訊息編輯" -#: zerver/actions/message_edit.py:1185 zerver/actions/message_edit.py:1188 +#: zerver/actions/message_edit.py:1211 zerver/actions/message_edit.py:1214 msgid "You don't have permission to edit this message" msgstr "您沒有權限編輯此訊息" -#: zerver/actions/message_edit.py:1199 +#: zerver/actions/message_edit.py:1225 msgid "The time limit for editing this message has passed" msgstr "可編輯此訊息的時間已過" -#: zerver/actions/message_edit.py:1214 +#: zerver/actions/message_edit.py:1240 msgid "The time limit for editing this message's topic has passed." msgstr "" -#: zerver/actions/message_edit.py:1248 zerver/actions/message_send.py:1428 +#: zerver/actions/message_edit.py:1274 zerver/actions/message_send.py:1547 msgid "You do not have permission to use wildcard mentions in this stream." msgstr "您沒有權限在這個使用" -#: zerver/actions/message_edit.py:1257 +#: zerver/actions/message_edit.py:1287 msgid "You don't have permission to move this message" msgstr "您沒有權限移動此訊息" -#: zerver/actions/message_edit.py:1263 -msgid "" -"You don't have permission to move this message due to missing access to its " -"stream" -msgstr "您沒有權限移動此訊息因為您沒有存取該頻道的權限" - -#: zerver/actions/message_edit.py:1280 +#: zerver/actions/message_edit.py:1302 msgid "The time limit for editing this message's stream has passed" msgstr "" #: zerver/actions/message_flags.py:257 -msgid "Invalid flag: '{}'" -msgstr "無效的 flag: '{}'" - -#: zerver/actions/message_flags.py:259 -msgid "Flag not editable: '{}'" -msgstr "Flag 不可編輯:'{}'" - -#: zerver/actions/message_flags.py:261 -msgid "Invalid message flag operation: '{}'" +#, python-brace-format +msgid "Invalid flag: '{flag}'" msgstr "" -#: zerver/actions/message_flags.py:333 zerver/lib/message.py:758 -#: zerver/lib/message.py:764 +#: zerver/actions/message_flags.py:259 +#, python-brace-format +msgid "Flag not editable: '{flag}'" +msgstr "" + +#: zerver/actions/message_flags.py:262 +#, python-brace-format +msgid "Invalid message flag operation: '{operation}'" +msgstr "" + +#: zerver/actions/message_flags.py:337 zerver/lib/message.py:789 +#: zerver/lib/message.py:795 msgid "Invalid message(s)" msgstr "無效的訊息(s)" -#: zerver/actions/message_send.py:156 +#: zerver/actions/message_send.py:158 msgid "Unable to render message" msgstr "無法渲染訊息" -#: zerver/actions/message_send.py:997 +#: zerver/actions/message_send.py:1117 msgid "Expected exactly one stream" msgstr "預期至少一個串流" -#: zerver/actions/message_send.py:1008 +#: zerver/actions/message_send.py:1128 msgid "Invalid data type for stream" msgstr "無效的串流資料類型" -#: zerver/actions/message_send.py:1024 zerver/actions/message_send.py:1034 +#: zerver/actions/message_send.py:1144 zerver/actions/message_send.py:1154 #: zerver/actions/scheduled_messages.py:53 msgid "Invalid data type for recipients" msgstr "無效的 recipients 資料類型" -#: zerver/actions/message_send.py:1042 zerver/actions/message_send.py:1050 +#: zerver/actions/message_send.py:1162 zerver/actions/message_send.py:1170 msgid "Recipient lists may contain emails or user IDs, but not both." msgstr "接收者清單可包含 emails 或是使用者 IDs,但不能兩個同時存在。" -#: zerver/actions/message_send.py:1195 +#: zerver/actions/message_send.py:1315 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream ID {stream_id}, " "but there is no stream with that ID." msgstr "您的機器人 {bot_identity} 嘗試發送訊息至串流 ID {stream_id},但無串流是該 ID。" -#: zerver/actions/message_send.py:1206 +#: zerver/actions/message_send.py:1326 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}, but" " that stream does not exist. Click [here]({new_stream_link}) to create it." msgstr "您的機器人 {bot_identity} 嘗試發送訊息至串流 {stream_name},但該串流不存在。點擊 [此處]({new_stream_link}) 以新建他。" -#: zerver/actions/message_send.py:1218 +#: zerver/actions/message_send.py:1338 #, python-brace-format msgid "" "Your bot {bot_identity} tried to send a message to stream {stream_name}. The" " stream exists but does not have any subscribers." msgstr "您的機器人 {bot_identity} 嘗試發送訊息至串流 {stream_name}。該串流存在,但沒有訂閱者。" -#: zerver/actions/message_send.py:1265 +#: zerver/actions/message_send.py:1385 msgid "Direct messages are disabled in this organization." msgstr "" -#: zerver/actions/message_send.py:1342 +#: zerver/actions/message_send.py:1462 msgid "Topics are required in this organization" msgstr "" -#: zerver/actions/message_send.py:1398 +#: zerver/actions/message_send.py:1518 msgid "Widgets: API programmer sent invalid JSON content" msgstr "" -#: zerver/actions/message_send.py:1404 +#: zerver/actions/message_send.py:1524 #, python-brace-format msgid "Widgets: {error_msg}" msgstr "" -#: zerver/actions/reactions.py:116 -msgid "Reaction already exists." -msgstr "" - -#: zerver/actions/realm_emoji.py:32 zerver/views/realm_emoji.py:36 +#: zerver/actions/realm_emoji.py:39 zerver/views/realm_emoji.py:38 msgid "A custom emoji with this name already exists." msgstr "自定義表情符號名稱已存在。" +#: zerver/actions/realm_linkifiers.py:156 +msgid "The ordered list must not contain duplicated linkifiers" +msgstr "" + +#: zerver/actions/realm_linkifiers.py:161 +msgid "The ordered list must enumerate all existing linkifiers exactly once" +msgstr "" + #: zerver/actions/scheduled_messages.py:42 msgid "Invalid data type for stream ID" msgstr "" @@ -3179,8 +3232,8 @@ msgid "Scheduled message was already sent" msgstr "" #: zerver/actions/scheduled_messages.py:166 -#: zerver/views/scheduled_messages.py:87 -#: zerver/views/scheduled_messages.py:127 +#: zerver/views/scheduled_messages.py:89 +#: zerver/views/scheduled_messages.py:129 msgid "Scheduled delivery time must be in the future." msgstr "" @@ -3199,18 +3252,32 @@ msgstr "" msgid "[View scheduled messages](#scheduled)" msgstr "" -#: zerver/actions/streams.py:76 +#: zerver/actions/streams.py:74 msgid "Stream is already deactivated" msgstr "" -#: zerver/actions/streams.py:841 +#: zerver/actions/streams.py:166 +msgid "Stream is not currently deactivated" +msgstr "" + +#: zerver/actions/streams.py:169 +#, python-brace-format +msgid "Stream named {stream_name} already exists" +msgstr "" + +#: zerver/actions/streams.py:237 +#, python-brace-format +msgid "Stream {stream_name} un-archived." +msgstr "" + +#: zerver/actions/streams.py:930 #, python-brace-format msgid "" "{user} changed the [access permissions](/help/stream-permissions) for this " "stream from **{old_policy}** to **{new_policy}**." msgstr "" -#: zerver/actions/streams.py:1025 +#: zerver/actions/streams.py:1112 #, python-brace-format msgid "" "{user} changed the [posting permissions](/help/stream-sending-policy) for this stream:\n" @@ -3219,38 +3286,38 @@ msgid "" "* **New permissions**: {new_policy}.\n" msgstr "" -#: zerver/actions/streams.py:1160 +#: zerver/actions/streams.py:1240 #, python-brace-format msgid "{user_name} renamed stream {old_stream_name} to {new_stream_name}." msgstr "{user_name} 重新命名串流 {old_stream_name} 變成 {new_stream_name}." -#: zerver/actions/streams.py:1179 zerver/actions/streams.py:1181 -#: zerver/views/streams.py:793 +#: zerver/actions/streams.py:1259 zerver/actions/streams.py:1261 +#: zerver/views/streams.py:799 msgid "No description." msgstr "無敘述。" -#: zerver/actions/streams.py:1184 +#: zerver/actions/streams.py:1264 #, python-brace-format msgid "{user} changed the description for this stream." msgstr "" -#: zerver/actions/streams.py:1186 +#: zerver/actions/streams.py:1266 msgid "Old description" msgstr "" -#: zerver/actions/streams.py:1190 +#: zerver/actions/streams.py:1270 msgid "New description" msgstr "" -#: zerver/actions/streams.py:1258 zerver/actions/streams.py:1263 +#: zerver/actions/streams.py:1336 zerver/actions/streams.py:1341 msgid "Forever" msgstr "" -#: zerver/actions/streams.py:1264 +#: zerver/actions/streams.py:1342 msgid "Messages in this stream will now be retained forever." msgstr "" -#: zerver/actions/streams.py:1270 +#: zerver/actions/streams.py:1348 #, python-brace-format msgid "" "{user} has changed the [message retention period](/help/message-retention-policy) for this stream:\n" @@ -3260,56 +3327,59 @@ msgid "" "{summary_line}" msgstr "" -#: zerver/actions/submessage.py:30 +#: zerver/actions/submessage.py:29 msgid "You cannot attach a submessage to this message." msgstr "" #: zerver/actions/typing.py:55 zerver/lib/addressee.py:33 -msgid "Invalid user ID {}" -msgstr "無效的使用者 ID {}" +#, python-brace-format +msgid "Invalid user ID {user_id}" +msgstr "" -#: zerver/actions/user_groups.py:153 zerver/actions/user_groups.py:168 -msgid "User group '{}' already exists." -msgstr "使用者群組 '{}' 已存在。" +#: zerver/actions/user_groups.py:209 zerver/actions/user_groups.py:239 +#, python-brace-format +msgid "User group '{group_name}' already exists." +msgstr "" -#: zerver/decorator.py:250 +#: zerver/decorator.py:251 msgid "This API is not available to incoming webhook bots." msgstr "" -#: zerver/decorator.py:277 +#: zerver/decorator.py:278 msgid "Account is not associated with this subdomain" msgstr "帳號沒被關聯至此子域名" -#: zerver/decorator.py:506 zerver/decorator.py:643 +#: zerver/decorator.py:511 zerver/decorator.py:648 msgid "This endpoint does not accept bot requests." msgstr "" -#: zerver/decorator.py:605 +#: zerver/decorator.py:610 msgid "Must be an server administrator" msgstr "" -#: zerver/decorator.py:662 zerver/lib/streams.py:699 zerver/lib/streams.py:725 -#: zerver/lib/streams.py:727 zerver/lib/streams.py:742 -#: zerver/lib/user_groups.py:34 zerver/lib/user_groups.py:41 -#: zerver/lib/users.py:249 zerver/lib/users.py:278 zerver/views/invite.py:60 -#: zerver/views/realm_emoji.py:31 zerver/views/streams.py:336 -#: zerver/views/streams.py:630 +#: zerver/decorator.py:667 zerver/lib/streams.py:711 zerver/lib/streams.py:737 +#: zerver/lib/streams.py:739 zerver/lib/streams.py:741 +#: zerver/lib/streams.py:760 zerver/lib/user_groups.py:94 +#: zerver/lib/user_groups.py:158 zerver/lib/users.py:217 +#: zerver/lib/users.py:246 zerver/views/invite.py:65 +#: zerver/views/invite.py:207 zerver/views/realm_emoji.py:33 +#: zerver/views/streams.py:321 zerver/views/streams.py:630 msgid "Insufficient permission" msgstr "" -#: zerver/decorator.py:704 +#: zerver/decorator.py:709 msgid "This endpoint requires HTTP basic authentication." msgstr "" -#: zerver/decorator.py:711 +#: zerver/decorator.py:716 msgid "Invalid authorization header for basic auth" msgstr "無效的 authorization header for basic auth" -#: zerver/decorator.py:713 +#: zerver/decorator.py:718 msgid "Missing authorization header for basic auth" msgstr "basic auth 缺少 authorization header" -#: zerver/decorator.py:886 +#: zerver/decorator.py:893 msgid "Webhook bots can only access webhooks" msgstr "Webhook 機器人只能存取 webhooks" @@ -3324,95 +3394,101 @@ msgstr "" msgid "The password is too weak." msgstr "" -#: zerver/forms.py:86 +#: zerver/forms.py:90 msgid "Subdomain needs to have length 3 or greater." msgstr "子域名需要長度至少為 3" -#: zerver/forms.py:87 +#: zerver/forms.py:91 msgid "Subdomain cannot start or end with a '-'." msgstr "子域名不能開頭或結尾有 '-'。" -#: zerver/forms.py:88 +#: zerver/forms.py:92 msgid "Subdomain can only have lowercase letters, numbers, and '-'s." msgstr "子域名只能是英文字母、數字、'-'。" -#: zerver/forms.py:89 -msgid "Subdomain unavailable. Please choose a different one." -msgstr "子域名不可用。請選擇另一個" +#: zerver/forms.py:93 +msgid "Subdomain already in use. Please choose a different one." +msgstr "" -#: zerver/forms.py:123 zerver/forms.py:126 zerver/forms.py:268 +#: zerver/forms.py:94 +msgid "Subdomain reserved. Please choose a different one." +msgstr "" + +#: zerver/forms.py:131 zerver/forms.py:134 zerver/forms.py:270 #: zerver/lib/email_validation.py:107 msgid "Please use your real email address." msgstr "請使用您真正的 email 地址。" -#: zerver/forms.py:244 +#: zerver/forms.py:246 #, python-brace-format msgid "The organization you are trying to join using {email} does not exist." msgstr "您嘗試加入的組織使用的 {email} 不存在。" -#: zerver/forms.py:252 +#: zerver/forms.py:254 #, python-brace-format msgid "" "Please request an invite for {email} from the organization administrator." msgstr "" -#: zerver/forms.py:263 +#: zerver/forms.py:265 #, python-brace-format msgid "" "Your email address, {email}, is not in one of the domains that are allowed " "to register for accounts in this organization." msgstr "您的 email 地址 {email},並不在此組織允許註冊的域名範圍內。" -#: zerver/forms.py:271 +#: zerver/forms.py:273 msgid "Email addresses containing + are not allowed in this organization." msgstr "" -#: zerver/forms.py:284 +#: zerver/forms.py:286 msgid "" "New members cannot join this organization because all Zulip licenses are in " "use. Please contact the person who invited you and ask them to increase the " "number of licenses, then try again." msgstr "" -#: zerver/forms.py:303 +#: zerver/forms.py:305 msgid "New password" msgstr "新密碼" -#: zerver/forms.py:310 +#: zerver/forms.py:312 msgid "New password confirmation" msgstr "確認新密碼" -#: zerver/forms.py:496 +#: zerver/forms.py:498 +#, python-brace-format msgid "" -"You're making too many attempts to sign in. Try again in {} seconds or " -"contact your organization administrator for help." +"You're making too many attempts to sign in. Try again in {seconds} seconds " +"or contact your organization administrator for help." msgstr "" -#: zerver/forms.py:508 +#: zerver/forms.py:510 msgid "" "Your password has been disabled because it is too weak. Reset your password " "to create a new one." msgstr "" -#: zerver/forms.py:557 +#: zerver/forms.py:559 msgid "Token" msgstr "" -#: zerver/forms.py:578 +#: zerver/forms.py:580 msgid "Tip: You can enter multiple email addresses with commas between them." msgstr "" -#: zerver/forms.py:584 +#: zerver/forms.py:586 msgid "Please enter at most 10 emails." msgstr "請輸入至少 10 個 emails。" -#: zerver/forms.py:597 +#: zerver/forms.py:599 msgid "We couldn't find that Zulip organization." msgstr "" #: zerver/lib/addressee.py:22 -msgid "Invalid email '{}'" -msgstr "無效的 email '{}'" +#, python-brace-format +msgid "Invalid email '{email}'" +msgstr "" #: zerver/lib/addressee.py:61 zerver/lib/addressee.py:128 #: zerver/views/typing.py:43 @@ -3476,31 +3552,31 @@ msgstr "子域名不能開頭或結尾有 '-'。" msgid "Domain can only have letters, numbers, '.' and '-'s." msgstr "域名只能是英文字母、數字、'.' 和 '-'。" -#: zerver/lib/drafts.py:62 +#: zerver/lib/drafts.py:51 msgid "Timestamp must not be negative." msgstr "" -#: zerver/lib/drafts.py:71 +#: zerver/lib/drafts.py:60 msgid "Topic must not contain null bytes" msgstr "" -#: zerver/lib/drafts.py:73 +#: zerver/lib/drafts.py:62 msgid "Must specify exactly 1 stream ID for stream messages" msgstr "" -#: zerver/lib/drafts.py:103 +#: zerver/lib/drafts.py:92 msgid "User has disabled synchronizing drafts." msgstr "" -#: zerver/lib/drafts.py:146 zerver/lib/drafts.py:163 +#: zerver/lib/drafts.py:135 zerver/lib/drafts.py:152 msgid "Draft does not exist" msgstr "" -#: zerver/lib/email_notifications.py:138 zerver/lib/email_notifications.py:160 +#: zerver/lib/email_notifications.py:139 zerver/lib/email_notifications.py:161 msgid "Open Zulip to see the spoiler content" msgstr "" -#: zerver/lib/email_notifications.py:563 +#: zerver/lib/email_notifications.py:574 msgid "Zulip notifications" msgstr "" @@ -3533,166 +3609,166 @@ msgstr "已有帳號" msgid "Account has been deactivated." msgstr "帳號已被停用" -#: zerver/lib/emoji.py:67 zerver/views/realm_emoji.py:59 -msgid "Emoji '{}' does not exist" -msgstr "表情符號 '{}' 不存在" +#: zerver/lib/emoji.py:88 zerver/views/realm_emoji.py:62 +#, python-brace-format +msgid "Emoji '{emoji_name}' does not exist" +msgstr "" -#: zerver/lib/emoji.py:77 +#: zerver/lib/emoji.py:101 msgid "Invalid custom emoji." msgstr "無效的自定義表情符號。" -#: zerver/lib/emoji.py:79 +#: zerver/lib/emoji.py:103 msgid "Invalid custom emoji name." msgstr "無效的自定義表情符號名稱。" -#: zerver/lib/emoji.py:81 +#: zerver/lib/emoji.py:105 msgid "This custom emoji has been deactivated." msgstr "此自定義表情符號已被停用" -#: zerver/lib/emoji.py:84 zerver/lib/emoji.py:89 +#: zerver/lib/emoji.py:108 zerver/lib/emoji.py:113 msgid "Invalid emoji code." msgstr "無效的表情符號碼。" -#: zerver/lib/emoji.py:86 zerver/lib/emoji.py:91 +#: zerver/lib/emoji.py:110 zerver/lib/emoji.py:115 msgid "Invalid emoji name." msgstr "無效的表情符號名稱。" -#: zerver/lib/emoji.py:94 +#: zerver/lib/emoji.py:118 msgid "Invalid emoji type." msgstr "無效的表情符號類型。" -#: zerver/lib/emoji.py:109 +#: zerver/lib/emoji.py:133 msgid "Must be an organization administrator or emoji author" msgstr "必須是組織管理者或表情符號作者" -#: zerver/lib/emoji.py:117 +#: zerver/lib/emoji.py:141 msgid "Emoji names must end with either a letter or digit." msgstr "" -#: zerver/lib/emoji.py:120 +#: zerver/lib/emoji.py:144 msgid "" "Emoji names must contain only lowercase English letters, digits, spaces, " "dashes, and underscores." msgstr "" -#: zerver/lib/emoji.py:123 +#: zerver/lib/emoji.py:147 msgid "Emoji name is missing" msgstr "缺少表情符號名稱" -#: zerver/lib/events.py:1539 +#: zerver/lib/events.py:1540 msgid "Could not allocate event queue" msgstr "" -#: zerver/lib/exceptions.py:137 +#: zerver/lib/exceptions.py:140 msgid "Not logged in: API authentication or user session required" msgstr "未登入:必須有 API authentication 或 user session" -#: zerver/lib/exceptions.py:162 +#: zerver/lib/exceptions.py:165 #, python-brace-format msgid "Stream '{stream}' does not exist" msgstr "串流 '{stream}' 不存在" -#: zerver/lib/exceptions.py:174 +#: zerver/lib/exceptions.py:177 #, python-brace-format msgid "Stream with ID '{stream_id}' does not exist" msgstr "串流 ID '{stream_id}' 不存在" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "organization owner" msgstr "組織所有者" -#: zerver/lib/exceptions.py:183 +#: zerver/lib/exceptions.py:186 msgid "user" msgstr "使用者" -#: zerver/lib/exceptions.py:187 +#: zerver/lib/exceptions.py:190 #, python-brace-format msgid "Cannot deactivate the only {entity}." msgstr "無法停用唯一的 {entity}。" -#: zerver/lib/exceptions.py:199 +#: zerver/lib/exceptions.py:202 #, python-brace-format msgid "Invalid Markdown include statement: {include_statement}" msgstr "" -#: zerver/lib/exceptions.py:211 +#: zerver/lib/exceptions.py:214 msgid "API usage exceeded rate limit" msgstr "" -#: zerver/lib/exceptions.py:234 zerver/lib/request.py:442 -#: zerver/lib/validator.py:755 +#: zerver/lib/exceptions.py:237 zerver/lib/request.py:441 +#: zerver/lib/typed_endpoint.py:361 zerver/lib/validator.py:768 msgid "Malformed JSON" msgstr "" -#: zerver/lib/exceptions.py:245 +#: zerver/lib/exceptions.py:248 msgid "Must be an organization member" msgstr "" -#: zerver/lib/exceptions.py:256 zerver/views/invite.py:70 -#: zerver/views/invite.py:132 zerver/views/invite.py:178 +#: zerver/lib/exceptions.py:259 zerver/views/invite.py:42 msgid "Must be an organization administrator" msgstr "" -#: zerver/lib/exceptions.py:267 +#: zerver/lib/exceptions.py:270 msgid "Must be an organization owner" msgstr "必須是組織所有者" -#: zerver/lib/exceptions.py:280 +#: zerver/lib/exceptions.py:283 msgid "Your username or password is incorrect" msgstr "" -#: zerver/lib/exceptions.py:288 +#: zerver/lib/exceptions.py:291 msgid "Account is deactivated" msgstr "帳號被停用" -#: zerver/lib/exceptions.py:296 +#: zerver/lib/exceptions.py:299 msgid "This organization has been deactivated" msgstr "此組織已被停用" -#: zerver/lib/exceptions.py:305 +#: zerver/lib/exceptions.py:308 msgid "" "The mobile push notification service registration for your server has been " "deactivated" msgstr "" -#: zerver/lib/exceptions.py:314 +#: zerver/lib/exceptions.py:317 msgid "Password authentication is disabled in this organization" msgstr "" -#: zerver/lib/exceptions.py:322 +#: zerver/lib/exceptions.py:325 msgid "Your password has been disabled and needs to be reset" msgstr "" -#: zerver/lib/exceptions.py:338 +#: zerver/lib/exceptions.py:341 msgid "Invalid API key" msgstr "無效的 API key" -#: zerver/lib/exceptions.py:344 +#: zerver/lib/exceptions.py:347 msgid "Malformed API key" msgstr "" -#: zerver/lib/exceptions.py:381 +#: zerver/lib/exceptions.py:386 #, python-brace-format msgid "" "The '{event_type}' event isn't currently supported by the {webhook_name} " -"webhook" +"webhook; ignoring" msgstr "" -#: zerver/lib/exceptions.py:399 +#: zerver/lib/exceptions.py:405 #, python-brace-format msgid "Unable to parse request: Did {webhook_name} generate this event?" msgstr "" -#: zerver/lib/exceptions.py:422 zerver/views/auth.py:741 +#: zerver/lib/exceptions.py:428 zerver/views/auth.py:741 #: zerver/views/auth.py:1076 zerver/views/auth.py:1140 msgid "Invalid subdomain" msgstr "無效的子域名" -#: zerver/lib/exceptions.py:462 +#: zerver/lib/exceptions.py:468 msgid "Access denied" msgstr "存取已拒絕" -#: zerver/lib/exceptions.py:501 +#: zerver/lib/exceptions.py:507 #, python-brace-format msgid "" "You only have permission to move the " @@ -3700,6 +3776,14 @@ msgid "" "messages in this topic." msgstr "" +#: zerver/lib/exceptions.py:519 +msgid "Reaction already exists." +msgstr "" + +#: zerver/lib/exceptions.py:530 +msgid "Reaction doesn't exist." +msgstr "" + #: zerver/lib/external_accounts.py:36 msgid "Twitter username" msgstr "" @@ -3741,7 +3825,7 @@ msgid "Settings" msgstr "設定" #: zerver/lib/hotspots.py:30 -msgid "Go to Settings to configure your notifications and display settings." +msgid "Go to Settings to configure your notifications and preferences." msgstr "" #: zerver/lib/hotspots.py:34 @@ -3754,264 +3838,272 @@ msgid "" "and give it a go!" msgstr "點擊此處開始一個新的對談。選擇主題(2-3 個詞是最佳的),然後發出去!" -#: zerver/lib/integrations.py:37 +#: zerver/lib/integrations.py:38 msgid "Integration frameworks" msgstr "" -#: zerver/lib/integrations.py:43 +#: zerver/lib/integrations.py:44 msgid "Continuous integration" msgstr "" -#: zerver/lib/integrations.py:44 +#: zerver/lib/integrations.py:45 msgid "Customer support" msgstr "客戶支援" -#: zerver/lib/integrations.py:45 +#: zerver/lib/integrations.py:46 msgid "Deployment" msgstr "" -#: zerver/lib/integrations.py:46 +#: zerver/lib/integrations.py:47 msgid "Entertainment" msgstr "" -#: zerver/lib/integrations.py:47 +#: zerver/lib/integrations.py:48 msgid "Communication" msgstr "" -#: zerver/lib/integrations.py:48 +#: zerver/lib/integrations.py:49 msgid "Financial" msgstr "" -#: zerver/lib/integrations.py:49 +#: zerver/lib/integrations.py:50 msgid "Human resources" msgstr "" -#: zerver/lib/integrations.py:50 +#: zerver/lib/integrations.py:51 msgid "Marketing" msgstr "市場" -#: zerver/lib/integrations.py:51 +#: zerver/lib/integrations.py:52 msgid "Miscellaneous" msgstr "" -#: zerver/lib/integrations.py:52 +#: zerver/lib/integrations.py:53 msgid "Monitoring" msgstr "" -#: zerver/lib/integrations.py:53 +#: zerver/lib/integrations.py:54 msgid "Project management" msgstr "" -#: zerver/lib/integrations.py:54 +#: zerver/lib/integrations.py:55 msgid "Productivity" msgstr "" -#: zerver/lib/integrations.py:55 +#: zerver/lib/integrations.py:56 msgid "Version control" msgstr "版本控制" -#: zerver/lib/message.py:192 +#: zerver/lib/message.py:222 msgid "Message must not be empty" msgstr "訊息不能為空" -#: zerver/lib/message.py:194 +#: zerver/lib/message.py:224 msgid "Message must not contain null bytes" msgstr "訊息不可包含 null bytes" -#: zerver/lib/narrow.py:107 -msgid "Operator {} not supported." +#: zerver/lib/message.py:1681 +#, python-brace-format +msgid "" +"You are not allowed to mention user group '{user_group_name}'. You must be a" +" member of '{can_mention_group_name}' to mention this group." msgstr "" -#: zerver/lib/narrow.py:197 +#: zerver/lib/narrow.py:109 +#, python-brace-format +msgid "Operator {operator} not supported." +msgstr "" + +#: zerver/lib/narrow.py:208 #, python-brace-format msgid "Invalid narrow operator: {desc}" msgstr "無效的範圍操作:{desc}" -#: zerver/lib/narrow.py:1038 +#: zerver/lib/narrow.py:1075 msgid "Missing 'anchor' argument." msgstr "缺少 'anchor' 參數." -#: zerver/lib/narrow.py:1058 +#: zerver/lib/narrow.py:1095 msgid "Invalid anchor" msgstr "無效的錨點" -#: zerver/lib/onboarding.py:59 +#: zerver/lib/onboarding.py:57 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Using Zulip for a class " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:66 +#: zerver/lib/onboarding.py:64 #, python-brace-format msgid "" "If you are new to Zulip, check out our [Getting started " "guide]({getting_started_url})!" msgstr "" -#: zerver/lib/onboarding.py:78 +#: zerver/lib/onboarding.py:76 #, python-brace-format msgid "" "We also have a guide for [Setting up Zulip for a " "class]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:88 +#: zerver/lib/onboarding.py:86 #, python-brace-format msgid "" "We also have a guide for [Setting up your " "organization]({organization_setup_url})." msgstr "" -#: zerver/lib/onboarding.py:98 +#: zerver/lib/onboarding.py:96 #, python-brace-format msgid "" "Note that this is a [demo organization]({demo_organization_help_url}) and " "will be **automatically deleted** in 30 days." msgstr "" -#: zerver/lib/onboarding.py:106 +#: zerver/lib/onboarding.py:104 msgid "Hello, and welcome to Zulip!" msgstr "嗨,歡迎來到 Zulip!" -#: zerver/lib/onboarding.py:107 +#: zerver/lib/onboarding.py:105 msgid "This is a direct message from me, Welcome Bot." msgstr "" -#: zerver/lib/onboarding.py:112 +#: zerver/lib/onboarding.py:110 msgid "" "I can also help you get set up! Just click anywhere on this message or press" " `r` to reply." msgstr "" -#: zerver/lib/onboarding.py:115 zerver/lib/onboarding.py:227 +#: zerver/lib/onboarding.py:113 zerver/lib/onboarding.py:225 msgid "Here are a few messages I understand:" msgstr "" -#: zerver/lib/onboarding.py:156 +#: zerver/lib/onboarding.py:154 msgid "" "You can [download](/apps/) the [mobile and desktop apps](/apps/). Zulip also" " works great in a browser." msgstr "" -#: zerver/lib/onboarding.py:161 +#: zerver/lib/onboarding.py:159 msgid "" "Go to [Profile settings](#settings/profile) to add a [profile " "picture](/help/change-your-profile-picture) and edit your [profile " "information](/help/edit-your-profile)." msgstr "" -#: zerver/lib/onboarding.py:167 +#: zerver/lib/onboarding.py:165 msgid "" -"Go to [Display settings](#settings/display-settings) to [switch between the " -"light and dark themes](/help/dark-theme), [pick your favorite emoji " +"Go to [Preferences](#settings/preferences) to [switch between the light and " +"dark themes](/help/dark-theme), [pick your favorite emoji " "theme](/help/emoji-and-emoticons#change-your-emoji-set), [change your " "language](/help/change-your-language), and make other tweaks to your Zulip " "experience." msgstr "" -#: zerver/lib/onboarding.py:177 +#: zerver/lib/onboarding.py:175 msgid "" "In Zulip, streams [determine who gets a message](/help/streams-and-topics). " "They are similar to channels in other chat apps." msgstr "" -#: zerver/lib/onboarding.py:181 +#: zerver/lib/onboarding.py:179 msgid "[Browse and subscribe to streams](#streams/all)." msgstr "" -#: zerver/lib/onboarding.py:188 +#: zerver/lib/onboarding.py:186 msgid "" "In Zulip, topics [tell you what a message is about](/help/streams-and-" "topics). They are light-weight subjects, very similar to the subject line of" " an email." msgstr "" -#: zerver/lib/onboarding.py:193 +#: zerver/lib/onboarding.py:191 msgid "" "Check out [Recent conversations](#recent) to see what's happening! You can " "return to this conversation by clicking \"Direct messages\" in the upper " "left." msgstr "" -#: zerver/lib/onboarding.py:202 +#: zerver/lib/onboarding.py:200 msgid "" "Zulip's [keyboard shortcuts](#keyboard-shortcuts) let you navigate the app " "quickly and efficiently." msgstr "" -#: zerver/lib/onboarding.py:206 +#: zerver/lib/onboarding.py:204 msgid "Press `?` any time to see a [cheat sheet](#keyboard-shortcuts)." msgstr "" -#: zerver/lib/onboarding.py:213 +#: zerver/lib/onboarding.py:211 msgid "" "Zulip uses [Markdown](/help/format-your-message-using-markdown), an " "intuitive format for **bold**, *italics*, bulleted lists, and more. Click " "[here](#message-formatting) for a cheat sheet." msgstr "" -#: zerver/lib/onboarding.py:219 +#: zerver/lib/onboarding.py:217 msgid "" "Check out our [messaging tips](/help/messaging-tips) to learn about emoji " "reactions, code blocks and much more!" msgstr "" -#: zerver/lib/onboarding.py:230 +#: zerver/lib/onboarding.py:228 msgid "" "Check out our [Getting started guide](/help/getting-started-with-zulip), or " "browse the [Help center](/help/) to learn more!" msgstr "" -#: zerver/lib/onboarding.py:239 +#: zerver/lib/onboarding.py:237 msgid "" "I’m sorry, I did not understand your message. Please try one of the " "following commands:" msgstr "" -#: zerver/lib/onboarding.py:271 +#: zerver/lib/onboarding.py:269 msgid "" "This is a private stream, as indicated by the lock icon next to the stream " "name." msgstr "這是私人串流,可以由串流名稱旁的鎖定圖示看出來。" -#: zerver/lib/onboarding.py:273 +#: zerver/lib/onboarding.py:271 msgid "Private streams are only visible to stream members." msgstr "私人串流只有該串流成員可見" -#: zerver/lib/onboarding.py:277 +#: zerver/lib/onboarding.py:275 #, python-brace-format msgid "" "To manage this stream, go to [Stream settings]({stream_settings_url}) and " "click on `{initial_private_stream_name}`." msgstr "管理此串流,至 [串流設定]({stream_settings_url}) 點擊 `{initial_private_stream_name}`。" -#: zerver/lib/onboarding.py:287 +#: zerver/lib/onboarding.py:285 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `topic demonstration`." msgstr "這是一則訊息在串流 #**{default_notification_stream_name}** 與主題 `topic demonstration`." -#: zerver/lib/onboarding.py:293 +#: zerver/lib/onboarding.py:291 msgid "Topics are a lightweight tool to keep conversations organized." msgstr "主題是一個輕量化的工具,可以持續有系統的對談。" -#: zerver/lib/onboarding.py:295 +#: zerver/lib/onboarding.py:293 #, python-brace-format msgid "" "You can learn more about topics at [Streams and " "topics]({about_topics_help_url})." msgstr "您可在[串流跟主題]({about_topics_help_url})學習更多有關於主題的事項。" -#: zerver/lib/onboarding.py:300 +#: zerver/lib/onboarding.py:298 #, python-brace-format msgid "" "This is a message on stream #**{default_notification_stream_name}** with the" " topic `swimming turtles`." msgstr "者是一則訊息在串流 #**{default_notification_stream_name}** 與主題 `swimming turtles`." -#: zerver/lib/onboarding.py:309 +#: zerver/lib/onboarding.py:307 #, python-brace-format msgid "" "[Start a new topic]({start_topic_help_url}) any time you're not replying to " @@ -4026,669 +4118,758 @@ msgstr "" msgid "Invalid response format" msgstr "" -#: zerver/lib/push_notifications.py:341 -msgid "Invalid GCM option to bouncer: priority {!r}" -msgstr "無效的 GCM option to bouncer: priority {!r}" +#: zerver/lib/push_notifications.py:388 +msgid "Invalid GCM option to bouncer: priority {priority!r}" +msgstr "" -#: zerver/lib/push_notifications.py:351 -msgid "Invalid GCM options to bouncer: {}" -msgstr "無效的 GCM options to bouncer: {}" +#: zerver/lib/push_notifications.py:398 +#, python-brace-format +msgid "Invalid GCM options to bouncer: {options}" +msgstr "" #. error -#: zerver/lib/push_notifications.py:575 zilencer/views.py:205 +#: zerver/lib/push_notifications.py:624 zilencer/views.py:208 msgid "Token does not exist" msgstr "Token 不存在" -#: zerver/lib/push_notifications.py:746 +#: zerver/lib/push_notifications.py:762 msgid "" "This organization has disabled including message content in mobile push " "notifications" msgstr "" -#: zerver/lib/push_notifications.py:835 +#: zerver/lib/push_notifications.py:852 #, python-brace-format msgid "{full_name} mentioned @{user_group_name}:" msgstr "" -#: zerver/lib/push_notifications.py:839 +#: zerver/lib/push_notifications.py:856 #, python-brace-format msgid "{full_name} mentioned you:" msgstr "{full_name} 提到你:" -#: zerver/lib/push_notifications.py:841 +#: zerver/lib/push_notifications.py:863 #, python-brace-format msgid "{full_name} mentioned everyone:" msgstr "{full_name} 提到所有人:" -#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:268 -#: zerver/lib/streams.py:276 zerver/lib/streams.py:838 -#: zerver/tornado/views.py:164 zerver/views/events_register.py:94 -#: zerver/views/message_send.py:182 zerver/views/message_send.py:203 -#: zerver/views/users.py:686 +#: zerver/lib/recipient_users.py:29 zerver/lib/streams.py:275 +#: zerver/lib/streams.py:283 zerver/lib/streams.py:890 +#: zerver/tornado/views.py:164 zerver/views/events_register.py:96 +#: zerver/views/message_send.py:176 zerver/views/message_send.py:197 msgid "User not authorized for this query" msgstr "使用者此查詢未授權" -#: zerver/lib/recipient_users.py:70 +#: zerver/lib/recipient_users.py:75 #, python-brace-format msgid "'{email}' is no longer using Zulip." msgstr "'{email}' 沒再使用 Zulip。" -#: zerver/lib/recipient_users.py:77 +#: zerver/lib/recipient_users.py:82 msgid "You can't send direct messages outside of your organization." msgstr "" #: zerver/lib/remote_server.py:93 -msgid "Push notifications bouncer error: {}" +#, python-brace-format +msgid "Push notifications bouncer error: {error}" msgstr "" -#: zerver/lib/request.py:92 +#: zerver/lib/request.py:91 #, python-brace-format msgid "Can't decide between '{var_name1}' and '{var_name2}' arguments" msgstr "不能從 '{var_name1}' 和 '{var_name2}' 之中決定參數" -#: zerver/lib/request.py:104 +#: zerver/lib/request.py:103 #, python-brace-format msgid "Missing '{var_name}' argument" msgstr "缺少 '{var_name}' 參數" -#: zerver/lib/request.py:117 +#: zerver/lib/request.py:116 #, python-brace-format msgid "Bad value for '{var_name}': {bad_value}" msgstr "" -#: zerver/lib/request.py:395 zerver/webhooks/ifttt/view.py:36 -#: zerver/webhooks/slack_incoming/view.py:42 +#: zerver/lib/request.py:394 zerver/lib/typed_endpoint.py:490 +#: zerver/webhooks/ifttt/view.py:37 zerver/webhooks/slack_incoming/view.py:44 msgid "Malformed payload" msgstr "" #: zerver/lib/request.py:443 -msgid "Argument \"{}\" is not valid JSON." +#, python-brace-format +msgid "Argument \"{name}\" is not valid JSON." msgstr "" #: zerver/lib/scheduled_messages.py:20 msgid "Scheduled message does not exist" msgstr "" -#: zerver/lib/send_email.py:72 +#: zerver/lib/send_email.py:73 msgid "Zulip Account Security" msgstr "Zulip 帳號安全性" -#: zerver/lib/streams.py:228 +#: zerver/lib/streams.py:235 msgid "Only organization administrators can send to this stream." msgstr "只有組織管理者可發送至此串流。" -#: zerver/lib/streams.py:234 +#: zerver/lib/streams.py:241 msgid "" "Only organization administrators and moderators can send to this stream." msgstr "" -#: zerver/lib/streams.py:237 +#: zerver/lib/streams.py:244 msgid "Guests cannot send to this stream." msgstr "" -#: zerver/lib/streams.py:242 +#: zerver/lib/streams.py:249 msgid "New members cannot send to this stream." msgstr "新成員不可發送至此串流。" -#: zerver/lib/streams.py:301 -msgid "Not authorized to send to stream '{}'" -msgstr "未授權發送至此串流 '{}'" +#: zerver/lib/streams.py:309 +#, python-brace-format +msgid "Not authorized to send to stream '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:306 +#: zerver/lib/streams.py:315 msgid "Please supply 'stream'." msgstr "請補充 'stream'。" -#: zerver/lib/streams.py:309 +#: zerver/lib/streams.py:318 msgid "Please choose one: 'stream' or 'stream_id'." msgstr "請選擇其一: 'stream' or 'stream_id'." -#: zerver/lib/streams.py:315 zerver/lib/streams.py:334 -#: zerver/lib/streams.py:417 zerver/lib/streams.py:483 -#: zerver/views/streams.py:399 zerver/views/user_topics.py:101 +#: zerver/lib/streams.py:324 zerver/lib/streams.py:343 +#: zerver/lib/streams.py:426 zerver/lib/streams.py:494 +#: zerver/views/streams.py:390 zerver/views/user_topics.py:101 msgid "Invalid stream ID" msgstr "" -#: zerver/lib/streams.py:459 -msgid "Stream name '{}' is already taken." -msgstr "串流名稱 '{}' 已存在。" +#: zerver/lib/streams.py:469 +#, python-brace-format +msgid "Stream name '{stream_name}' is already taken." +msgstr "" -#: zerver/lib/streams.py:467 zerver/lib/streams.py:587 -msgid "Invalid stream name '{}'" -msgstr "無效的串流名稱 '{}'" +#: zerver/lib/streams.py:478 zerver/lib/streams.py:598 +#, python-brace-format +msgid "Invalid stream name '{stream_name}'" +msgstr "" -#: zerver/lib/streams.py:731 -msgid "Stream(s) ({}) do not exist" -msgstr "串流(s) ({}) 不存在" +#: zerver/lib/streams.py:743 zerver/views/streams.py:306 +msgid "A default stream cannot be private." +msgstr "" -#: zerver/lib/streams.py:738 zerver/views/streams.py:334 +#: zerver/lib/streams.py:747 +#, python-brace-format +msgid "Stream(s) ({stream_names}) do not exist" +msgstr "" + +#: zerver/lib/streams.py:756 zerver/views/streams.py:319 msgid "Web-public streams are not enabled." msgstr "" -#: zerver/lib/streams.py:767 -msgid "Default stream group with id '{}' does not exist." -msgstr "預設串流群組 id '{}' 不存在" +#: zerver/lib/streams.py:786 +#, python-brace-format +msgid "Default stream group with id '{group_id}' does not exist." +msgstr "" -#: zerver/lib/string_validation.py:38 +#: zerver/lib/string_validation.py:41 msgid "Stream name can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:42 -msgid "Stream name too long (limit: {} characters)." -msgstr "串流名稱過長(限制:{} 字元)。" - -#: zerver/lib/string_validation.py:48 -msgid "Invalid character in stream name, at position {}!" +#: zerver/lib/string_validation.py:45 +#, python-brace-format +msgid "Stream name too long (limit: {max_length} characters)." msgstr "" -#: zerver/lib/string_validation.py:54 +#: zerver/lib/string_validation.py:53 +#, python-brace-format +msgid "Invalid character in stream name, at position {position}!" +msgstr "" + +#: zerver/lib/string_validation.py:61 msgid "Topic can't be empty!" msgstr "" -#: zerver/lib/string_validation.py:59 -msgid "Invalid character in topic, at position {}!" +#: zerver/lib/string_validation.py:66 +#, python-brace-format +msgid "Invalid character in topic, at position {position}!" msgstr "" -#: zerver/lib/subscription_info.py:295 +#: zerver/lib/subscription_info.py:302 msgid "Subscriber data is not available for this stream" msgstr "此串流訂閱者資料不可用" -#: zerver/lib/subscription_info.py:302 +#: zerver/lib/subscription_info.py:309 msgid "Unable to retrieve subscribers for private stream" msgstr "無法取得該私人串流的訂閱者" +#: zerver/lib/typed_endpoint.py:313 zerver/lib/typed_endpoint.py:314 +#: zerver/lib/validator.py:205 +#, python-brace-format +msgid "{var_name} is not a boolean" +msgstr "{var_name} 不是 boolean" + +#: zerver/lib/typed_endpoint.py:315 zerver/lib/typed_endpoint.py:316 +#: zerver/lib/validator.py:157 zerver/lib/validator.py:159 +#, python-brace-format +msgid "{var_name} is not a date" +msgstr "{var_name} 不是 date" + +#: zerver/lib/typed_endpoint.py:317 zerver/lib/validator.py:286 +#: zerver/lib/validator.py:668 +#, python-brace-format +msgid "{var_name} is not a dict" +msgstr "{var_name} 不是 dict" + +#: zerver/lib/typed_endpoint.py:318 zerver/lib/typed_endpoint.py:332 +#, python-brace-format +msgid "Argument \"{argument}\" at {var_name} is unexpected" +msgstr "" + +#: zerver/lib/typed_endpoint.py:319 zerver/lib/typed_endpoint.py:320 +#: zerver/lib/validator.py:199 +#, python-brace-format +msgid "{var_name} is not a float" +msgstr "{var_name} 不是 float" + +#: zerver/lib/typed_endpoint.py:321 zerver/lib/validator.py:189 +#, python-brace-format +msgid "{var_name} is too small" +msgstr "" + +#: zerver/lib/typed_endpoint.py:322 zerver/lib/typed_endpoint.py:323 +#: zerver/lib/validator.py:165 +#, python-brace-format +msgid "{var_name} is not an integer" +msgstr "{var_name} 不是 integer" + +#: zerver/lib/typed_endpoint.py:324 zerver/lib/typed_endpoint.py:325 +#, python-brace-format +msgid "{var_name} is not valid JSON" +msgstr "" + +#: zerver/lib/typed_endpoint.py:326 zerver/lib/validator.py:191 +#, python-brace-format +msgid "{var_name} is too large" +msgstr "" + +#: zerver/lib/typed_endpoint.py:327 zerver/lib/validator.py:235 +#: zerver/lib/validator.py:665 +#, python-brace-format +msgid "{var_name} is not a list" +msgstr "{var_name} 不是 list" + +#: zerver/lib/typed_endpoint.py:328 zerver/lib/validator.py:93 +#: zerver/lib/validator.py:178 +#, python-brace-format +msgid "Invalid {var_name}" +msgstr "無效的 {var_name}" + +#: zerver/lib/typed_endpoint.py:329 zerver/lib/validator.py:108 +#, python-brace-format +msgid "{var_name} is too long (limit: {max_length} characters)" +msgstr "{var_name} 過長(限制:{max_length} 字元)" + +#: zerver/lib/typed_endpoint.py:330 +#, python-brace-format +msgid "{var_name} is too short." +msgstr "" + +#: zerver/lib/typed_endpoint.py:331 zerver/lib/validator.py:78 +#: zerver/lib/validator.py:151 +#, python-brace-format +msgid "{var_name} is not a string" +msgstr "{var_name} 不是個字串" + +#: zerver/lib/typed_endpoint.py:366 +#, python-brace-format +msgid "{var_name} cannot be blank" +msgstr "" + #: zerver/lib/upload/__init__.py:31 msgid "Upload would exceed your organization's upload quota." msgstr "" -#: zerver/lib/upload/base.py:67 zerver/lib/upload/base.py:83 -#: zerver/lib/upload/base.py:177 +#: zerver/lib/upload/base.py:68 zerver/lib/upload/base.py:84 +#: zerver/lib/upload/base.py:178 msgid "Could not decode image; did you upload an image file?" msgstr "" -#: zerver/lib/upload/base.py:69 zerver/lib/upload/base.py:85 -#: zerver/lib/upload/base.py:179 +#: zerver/lib/upload/base.py:70 zerver/lib/upload/base.py:86 +#: zerver/lib/upload/base.py:180 msgid "Image size exceeds limit." msgstr "圖檔超過限制大小" -#: zerver/lib/upload/base.py:107 +#: zerver/lib/upload/base.py:108 msgid "Corrupt animated image." msgstr "" -#: zerver/lib/upload/base.py:116 +#: zerver/lib/upload/base.py:117 msgid "Unknown animated image format." msgstr "" -#: zerver/lib/user_groups.py:43 +#: zerver/lib/user_groups.py:91 msgid "Invalid user group" msgstr "無效的使用者群組" -#: zerver/lib/user_groups.py:55 -msgid "Invalid user group ID: {}" +#: zerver/lib/user_groups.py:150 +#, python-brace-format +msgid "Invalid user group ID: {group_id}" msgstr "" -#: zerver/lib/user_groups.py:73 -msgid "'{}' must be a system user group." +#: zerver/lib/user_groups.py:182 +#, python-brace-format +msgid "'{setting_name}' must be a system user group." msgstr "" -#: zerver/lib/user_groups.py:77 -msgid "'{}' setting cannot be set to '@role:internet' group." +#: zerver/lib/user_groups.py:187 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:internet' group." msgstr "" -#: zerver/lib/user_groups.py:82 -msgid "'{}' setting cannot be set to '@role:owners' group." +#: zerver/lib/user_groups.py:194 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:owners' group." msgstr "" -#: zerver/lib/user_groups.py:87 -msgid "'{}' setting cannot be set to '@role:nobody' group." +#: zerver/lib/user_groups.py:201 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:nobody' group." msgstr "" -#: zerver/lib/users.py:45 +#: zerver/lib/user_groups.py:208 +#, python-brace-format +msgid "'{setting_name}' setting cannot be set to 'role:everyone' group." +msgstr "" + +#: zerver/lib/user_groups.py:218 +msgid "User group name can't be empty!" +msgstr "" + +#: zerver/lib/user_groups.py:222 +#, python-brace-format +msgid "User group name cannot exceed {max_length} characters." +msgstr "" + +#: zerver/lib/user_groups.py:230 +#, python-brace-format +msgid "User group name cannot start with '{prefix}'." +msgstr "" + +#: zerver/lib/users.py:41 msgid "Name too long!" msgstr "名稱過長!" -#: zerver/lib/users.py:47 +#: zerver/lib/users.py:43 msgid "Name too short!" msgstr "名稱過短!" -#: zerver/lib/users.py:50 +#: zerver/lib/users.py:46 msgid "Invalid characters in name!" msgstr "無效的字元在名稱裡!" -#: zerver/lib/users.py:56 +#: zerver/lib/users.py:52 msgid "Invalid format!" msgstr "無效的格式!" -#: zerver/lib/users.py:72 +#: zerver/lib/users.py:68 msgid "Name is already in use!" msgstr "名稱已被使用!" -#: zerver/lib/users.py:78 zerver/views/users.py:494 zerver/views/users.py:507 +#: zerver/lib/users.py:74 zerver/views/users.py:494 zerver/views/users.py:507 #: zerver/views/users.py:691 msgid "Bad name or username" msgstr "無效的名稱或使用者名稱" -#: zerver/lib/users.py:95 -msgid "Invalid integration '{}'." -msgstr "無效的 integration '{}'." +#: zerver/lib/users.py:92 +#, python-brace-format +msgid "Invalid integration '{integration_name}'." +msgstr "" -#: zerver/lib/users.py:100 -msgid "Missing configuration parameters: {}" -msgstr "缺少 configuration parameters: {}" +#: zerver/lib/users.py:98 +#, python-brace-format +msgid "Missing configuration parameters: {keys}" +msgstr "" -#: zerver/lib/users.py:109 -msgid "Invalid {} value {} ({})" -msgstr "無效的 {} 值 {} ({})" +#: zerver/lib/users.py:108 +#, python-brace-format +msgid "Invalid {key} value {value} ({error})" +msgstr "" -#: zerver/lib/users.py:124 +#: zerver/lib/users.py:126 msgid "Invalid configuration data!" msgstr "無效的設定資料!" -#: zerver/lib/users.py:158 +#: zerver/lib/users.py:160 msgid "Invalid bot type" msgstr "無效的機器人類型" -#: zerver/lib/users.py:163 +#: zerver/lib/users.py:165 msgid "Invalid interface type" msgstr "無效的介面類型" -#: zerver/lib/users.py:232 zerver/lib/users.py:237 zerver/models.py:4642 -msgid "Invalid user ID: {}" -msgstr "無效的使用者 ID:{}" +#: zerver/lib/users.py:204 zerver/models.py:4792 +#, python-brace-format +msgid "Invalid user ID: {user_id}" +msgstr "" -#: zerver/lib/users.py:245 zerver/lib/users.py:247 +#: zerver/lib/users.py:213 zerver/lib/users.py:215 msgid "No such bot" msgstr "無此機器人" -#: zerver/lib/users.py:271 zerver/lib/users.py:298 zerver/lib/users.py:314 -#: zerver/views/presence.py:44 +#: zerver/lib/users.py:239 zerver/lib/users.py:266 zerver/lib/users.py:282 +#: zerver/views/presence.py:46 msgid "No such user" msgstr "無此使用者" -#: zerver/lib/users.py:273 +#: zerver/lib/users.py:241 msgid "User is deactivated" msgstr "使用者已停用" -#: zerver/lib/validator.py:76 zerver/lib/validator.py:149 -#, python-brace-format -msgid "{var_name} is not a string" -msgstr "{var_name} 不是個字串" - -#: zerver/lib/validator.py:83 +#: zerver/lib/validator.py:85 #, python-brace-format msgid "{item} cannot be blank." msgstr "{item} 不能是空白。" -#: zerver/lib/validator.py:91 zerver/lib/validator.py:176 -#, python-brace-format -msgid "Invalid {var_name}" -msgstr "無效的 {var_name}" - -#: zerver/lib/validator.py:106 -#, python-brace-format -msgid "{var_name} is too long (limit: {max_length} characters)" -msgstr "{var_name} 過長(限制:{max_length} 字元)" - -#: zerver/lib/validator.py:121 +#: zerver/lib/validator.py:123 #, python-brace-format msgid "{var_name} has incorrect length {length}; should be {target_length}" msgstr "{var_name} 是不正確的長度 {length}; 應為 {target_length}" -#: zerver/lib/validator.py:142 +#: zerver/lib/validator.py:144 #, python-brace-format msgid "{var_name} is not a recognized time zone" msgstr "" -#: zerver/lib/validator.py:155 zerver/lib/validator.py:157 -#, python-brace-format -msgid "{var_name} is not a date" -msgstr "{var_name} 不是 date" - -#: zerver/lib/validator.py:163 -#, python-brace-format -msgid "{var_name} is not an integer" -msgstr "{var_name} 不是 integer" - -#: zerver/lib/validator.py:187 -#, python-brace-format -msgid "{var_name} is too small" -msgstr "" - -#: zerver/lib/validator.py:189 -#, python-brace-format -msgid "{var_name} is too large" -msgstr "" - -#: zerver/lib/validator.py:197 -#, python-brace-format -msgid "{var_name} is not a float" -msgstr "{var_name} 不是 float" - -#: zerver/lib/validator.py:203 -#, python-brace-format -msgid "{var_name} is not a boolean" -msgstr "{var_name} 不是 boolean" - -#: zerver/lib/validator.py:213 +#: zerver/lib/validator.py:215 #, python-brace-format msgid "{var_name} is not a valid hex color code" msgstr "{var_name} 不是有效的 hex color code" -#: zerver/lib/validator.py:233 zerver/lib/validator.py:652 -#, python-brace-format -msgid "{var_name} is not a list" -msgstr "{var_name} 不是 list" - -#: zerver/lib/validator.py:237 +#: zerver/lib/validator.py:239 #, python-brace-format msgid "{container} should have exactly {length} items" msgstr "{container} 應有 {length} items" -#: zerver/lib/validator.py:284 zerver/lib/validator.py:655 -#, python-brace-format -msgid "{var_name} is not a dict" -msgstr "{var_name} 不是 dict" - -#: zerver/lib/validator.py:292 +#: zerver/lib/validator.py:294 #, python-brace-format msgid "{key_name} key is missing from {var_name}" msgstr "在 {var_name} 裡缺少 key {key_name}" -#: zerver/lib/validator.py:317 -msgid "Unexpected arguments: {}" -msgstr "非預期的參數:{}" +#: zerver/lib/validator.py:319 +#, python-brace-format +msgid "Unexpected arguments: {keys}" +msgstr "" -#: zerver/lib/validator.py:350 +#: zerver/lib/validator.py:352 #, python-brace-format msgid "{var_name} is not an allowed_type" msgstr "{var_name} 不是 allowed_type" -#: zerver/lib/validator.py:359 +#: zerver/lib/validator.py:361 #, python-brace-format msgid "{variable} != {expected_value} ({value} is wrong)" msgstr "{variable} != {expected_value} ({value} 是錯的)" -#: zerver/lib/validator.py:386 +#: zerver/lib/validator.py:388 #, python-brace-format msgid "{var_name} is not a URL" msgstr "{var_name} 不是 URL" -#: zerver/lib/validator.py:393 +#: zerver/lib/validator.py:395 #, python-format msgid "URL pattern must contain '%(username)s'." msgstr "" -#: zerver/lib/validator.py:417 +#: zerver/lib/validator.py:419 #, python-brace-format msgid "'{item}' cannot be blank." msgstr "'{item}' 不能是空白。" -#: zerver/lib/validator.py:426 +#: zerver/lib/validator.py:428 msgid "Field must not have duplicate choices." msgstr "" -#: zerver/lib/validator.py:439 +#: zerver/lib/validator.py:441 #, python-brace-format msgid "'{value}' is not a valid choice for '{field_name}'." msgstr "'{value}' 對於 '{field_name}' 不是有效的選擇。" -#: zerver/lib/validator.py:617 +#: zerver/lib/validator.py:619 #, python-brace-format msgid "{var_name} is not a string or an integer list" msgstr "{var_name} 不是 string 或 integer list" -#: zerver/lib/validator.py:627 +#: zerver/lib/validator.py:629 #, python-brace-format msgid "{var_name} is not a string or integer" msgstr "{var_name} 不是 string 或 integer" -#: zerver/lib/validator.py:644 +#: zerver/lib/validator.py:657 #, python-brace-format msgid "{var_name} does not have a length" msgstr "" -#: zerver/lib/validator.py:701 zerver/lib/validator.py:721 +#: zerver/lib/validator.py:714 zerver/lib/validator.py:734 #, python-brace-format msgid "{var_name} is missing" msgstr "" -#: zerver/lib/webhooks/common.py:69 +#: zerver/lib/webhooks/common.py:73 #, python-brace-format msgid "Missing the HTTP event header '{header}'" msgstr "缺少 HTTP event header '{header}'" -#: zerver/lib/webhooks/common.py:231 -msgid "The {} webhook expects time in milliseconds." +#: zerver/lib/webhooks/common.py:235 +#, python-brace-format +msgid "The {webhook} webhook expects time in milliseconds." msgstr "" -#: zerver/lib/zcommand.py:30 +#: zerver/lib/zcommand.py:24 msgid "There should be a leading slash in the zcommand." msgstr "" -#: zerver/lib/zcommand.py:79 -msgid "No such command: {}" +#: zerver/lib/zcommand.py:73 +#, python-brace-format +msgid "No such command: {command}" msgstr "" -#: zerver/middleware.py:464 +#: zerver/middleware.py:444 #, python-brace-format msgid "CSRF error: {reason}" msgstr "" -#: zerver/models.py:500 +#: zerver/middleware.py:610 +#, python-brace-format +msgid "Reverse proxy misconfiguration: {proxy_reason}" +msgstr "" + +#: zerver/models.py:488 msgid "stream events" msgstr "串流事件" -#: zerver/models.py:631 +#: zerver/models.py:619 msgid "Available on Zulip Cloud Standard. Upgrade to access." msgstr "" -#: zerver/models.py:689 +#: zerver/models.py:680 msgid "GIPHY integration disabled" msgstr "" -#: zerver/models.py:694 +#: zerver/models.py:685 msgid "Allow GIFs rated Y (Very young audience)" msgstr "" -#: zerver/models.py:698 +#: zerver/models.py:689 msgid "Allow GIFs rated G (General audience)" msgstr "" -#: zerver/models.py:702 +#: zerver/models.py:693 msgid "Allow GIFs rated PG (Parental guidance)" msgstr "" -#: zerver/models.py:706 +#: zerver/models.py:697 msgid "Allow GIFs rated PG-13 (Parental guidance - under 13)" msgstr "" -#: zerver/models.py:710 +#: zerver/models.py:701 msgid "Allow GIFs rated R (Restricted)" msgstr "" -#: zerver/models.py:1136 +#: zerver/models.py:1135 msgid "Invalid characters in emoji name" msgstr "表情符號名稱中有無效的字元" -#: zerver/models.py:1260 zerver/models.py:1262 -msgid "Bad regular expression: {}" +#: zerver/models.py:1247 zerver/models.py:1250 +#, python-brace-format +msgid "Bad regular expression: {regex}" msgstr "" -#: zerver/models.py:1263 +#: zerver/models.py:1252 msgid "Unknown regular expression error" msgstr "" -#: zerver/models.py:1271 +#: zerver/models.py:1260 msgid "Invalid URL template." msgstr "" -#: zerver/models.py:1315 +#: zerver/models.py:1307 #, python-format msgid "Group %(name)r in URL template is not present in linkifier pattern." msgstr "" -#: zerver/models.py:1327 +#: zerver/models.py:1319 #, python-format msgid "Group %(name)r in linkifier pattern is not present in URL template." msgstr "" -#: zerver/models.py:1405 zerver/views/realm_playgrounds.py:25 +#: zerver/models.py:1373 zerver/views/realm_playgrounds.py:24 msgid "Invalid characters in pygments language" msgstr "" -#: zerver/models.py:1649 +#: zerver/models.py:1403 +msgid "Missing the required variable \"code\" in the URL template" +msgstr "" + +#: zerver/models.py:1408 +msgid "\"code\" should be the only variable present in the URL template" +msgstr "" + +#: zerver/models.py:1667 msgid "Admins, moderators, members and guests" msgstr "" -#: zerver/models.py:1650 +#: zerver/models.py:1668 msgid "Admins, moderators and members" msgstr "" -#: zerver/models.py:1651 +#: zerver/models.py:1669 msgid "Admins and moderators" msgstr "" -#: zerver/models.py:1652 +#: zerver/models.py:1670 msgid "Admins only" msgstr "只允許管理者" -#: zerver/models.py:1653 +#: zerver/models.py:1671 msgid "Nobody" msgstr "沒有人" -#: zerver/models.py:1957 +#: zerver/models.py:1981 msgid "Organization owner" msgstr "" -#: zerver/models.py:1958 +#: zerver/models.py:1982 msgid "Organization administrator" msgstr "" -#: zerver/models.py:1959 +#: zerver/models.py:1983 msgid "Moderator" msgstr "" -#: zerver/models.py:1960 +#: zerver/models.py:1984 msgid "Member" msgstr "成員" -#: zerver/models.py:1961 +#: zerver/models.py:1985 msgid "Guest" msgstr "訪客" -#: zerver/models.py:2528 +#: zerver/models.py:2577 msgid "Web-public" msgstr "" -#: zerver/models.py:2534 +#: zerver/models.py:2583 msgid "Public" msgstr "公開" -#: zerver/models.py:2540 +#: zerver/models.py:2589 msgid "Private, shared history" msgstr "" -#: zerver/models.py:2546 +#: zerver/models.py:2595 msgid "Private, protected history" msgstr "" -#: zerver/models.py:2554 +#: zerver/models.py:2603 msgid "Public, protected history" msgstr "" -#: zerver/models.py:2574 +#: zerver/models.py:2623 msgid "All stream members can post" msgstr "所有串流成員都可發表" -#: zerver/models.py:2575 +#: zerver/models.py:2624 msgid "Only organization administrators can post" msgstr "只有組織管理者可以發表" -#: zerver/models.py:2577 +#: zerver/models.py:2626 msgid "Only organization administrators and moderators can post" msgstr "" -#: zerver/models.py:2580 +#: zerver/models.py:2629 msgid "Only organization full members can post" msgstr "只有組織成員可以發表" -#: zerver/models.py:3206 +#: zerver/models.py:3305 msgid "Unicode emoji" msgstr "Unicode 表情符號" -#: zerver/models.py:3207 +#: zerver/models.py:3306 msgid "Custom emoji" msgstr "自定義表情符號" -#: zerver/models.py:3208 +#: zerver/models.py:3307 msgid "Zulip extra emoji" msgstr "Zulip 額外的表情符號" -#: zerver/models.py:4645 -msgid "User with ID {} is deactivated" +#: zerver/models.py:4796 +#, python-brace-format +msgid "User with ID {user_id} is deactivated" msgstr "" -#: zerver/models.py:4648 -msgid "User with ID {} is a bot" +#: zerver/models.py:4800 +#, python-brace-format +msgid "User with ID {user_id} is a bot" msgstr "" -#: zerver/models.py:4688 +#: zerver/models.py:4840 msgid "List of options" msgstr "" -#: zerver/models.py:4691 +#: zerver/models.py:4843 msgid "Person picker" msgstr "" -#: zerver/models.py:4703 +#: zerver/models.py:4855 msgid "Short text" msgstr "" -#: zerver/models.py:4704 +#: zerver/models.py:4856 msgid "Long text" msgstr "" -#: zerver/models.py:4705 +#: zerver/models.py:4857 msgid "Date picker" msgstr "日期選擇器" -#: zerver/models.py:4706 +#: zerver/models.py:4858 msgid "Link" msgstr "連結" -#: zerver/models.py:4709 +#: zerver/models.py:4861 msgid "External account" msgstr "" -#: zerver/models.py:4714 +#: zerver/models.py:4866 msgid "Pronouns" msgstr "" -#: zerver/signals.py:95 +#: zerver/signals.py:105 msgid "Unknown IP address" msgstr "未知的 IP 地址" -#: zerver/signals.py:96 +#: zerver/signals.py:106 msgid "an unknown operating system" msgstr "未知的作業系統" -#: zerver/signals.py:97 +#: zerver/signals.py:107 msgid "An unknown browser" msgstr "未知的瀏覽器" -#: zerver/tornado/event_queue.py:673 +#: zerver/tornado/event_queue.py:678 msgid "Missing 'queue_id' argument" msgstr "缺少 'queue_id' 參數" -#: zerver/tornado/event_queue.py:676 +#: zerver/tornado/event_queue.py:681 msgid "Missing 'last_event_id' argument" msgstr "缺少 'last_event_id' 參數" -#: zerver/tornado/event_queue.py:683 +#: zerver/tornado/event_queue.py:688 #, python-brace-format msgid "An event newer than {event_id} has already been pruned!" msgstr "" -#: zerver/tornado/event_queue.py:693 +#: zerver/tornado/event_queue.py:698 #, python-brace-format msgid "Event {event_id} was not in this queue" msgstr "" @@ -4756,66 +4937,99 @@ msgstr "" msgid "Default custom field cannot be updated." msgstr "預設自定義欄位不能被更新。" -#: zerver/views/development/dev_login.py:98 +#: zerver/views/development/dev_login.py:100 msgid "Endpoint not available in production." msgstr "" -#: zerver/views/development/dev_login.py:100 +#: zerver/views/development/dev_login.py:102 msgid "DevAuthBackend not enabled." msgstr "" -#: zerver/views/events_register.py:107 zerver/views/events_register.py:111 -msgid "Invalid '{}' parameter for anonymous request" +#: zerver/views/events_register.py:109 zerver/views/events_register.py:113 +#, python-brace-format +msgid "Invalid '{key}' parameter for anonymous request" +msgstr "" + +#: zerver/views/health.py:17 +msgid "Database is empty" +msgstr "" + +#: zerver/views/health.py:21 +msgid "Cannot query postgresql" +msgstr "" + +#: zerver/views/health.py:28 +msgid "Cannot connect to rabbitmq" +msgstr "" + +#: zerver/views/health.py:34 +msgid "Cannot query rabbitmq" +msgstr "" + +#: zerver/views/health.py:41 +msgid "Cannot query redis" +msgstr "" + +#: zerver/views/health.py:51 +msgid "Cannot write to memcached" +msgstr "" + +#: zerver/views/health.py:56 +msgid "Cannot query memcached" msgstr "" #: zerver/views/hotspots.py:19 -msgid "Unknown hotspot: {}" -msgstr "未知的 hotspot: {}" +#, python-brace-format +msgid "Unknown hotspot: {hotspot}" +msgstr "" -#: zerver/views/invite.py:72 +#: zerver/views/invite.py:77 msgid "You must specify at least one email address." msgstr "" -#: zerver/views/invite.py:82 -msgid "Stream does not exist with id: {}. No invites were sent." -msgstr "不存在串流 id:{}。邀請未發送。" - #: zerver/views/invite.py:87 +#, python-brace-format +msgid "Stream does not exist with id: {stream_id}. No invites were sent." +msgstr "" + +#: zerver/views/invite.py:94 msgid "You do not have permission to subscribe other users to streams." msgstr "" -#: zerver/views/invite.py:124 zerver/views/invite.py:127 -#: zerver/views/invite.py:146 zerver/views/invite.py:149 -#: zerver/views/invite.py:168 zerver/views/invite.py:173 +#: zerver/views/invite.py:131 zerver/views/invite.py:134 +#: zerver/views/invite.py:151 zerver/views/invite.py:154 +#: zerver/views/invite.py:174 zerver/views/invite.py:179 msgid "No such invitation" msgstr "" -#: zerver/views/invite.py:154 +#: zerver/views/invite.py:160 msgid "Invitation has already been revoked" msgstr "" -#: zerver/views/invite.py:207 -msgid "Invalid stream ID {}. No invites were sent." +#: zerver/views/invite.py:224 +#, python-brace-format +msgid "Invalid stream ID {stream_id}. No invites were sent." msgstr "" -#: zerver/views/message_edit.py:98 +#: zerver/views/message_edit.py:99 msgid "Message edit history is disabled in this organization" msgstr "此組織禁用訊息編輯歷史" -#: zerver/views/message_edit.py:154 zerver/views/message_edit.py:157 +#: zerver/views/message_edit.py:151 zerver/views/message_edit.py:154 msgid "You don't have permission to delete this message" msgstr "" -#: zerver/views/message_edit.py:165 +#: zerver/views/message_edit.py:162 msgid "The time limit for deleting this message has passed" msgstr "" -#: zerver/views/message_edit.py:185 +#: zerver/views/message_edit.py:183 msgid "Message already deleted" msgstr "" #: zerver/views/message_fetch.py:99 -msgid "Too many messages requested (maximum {})." +#, python-brace-format +msgid "Too many messages requested (maximum {max_messages})." msgstr "" #: zerver/views/message_fetch.py:104 zerver/views/message_flags.py:85 @@ -4823,22 +5037,23 @@ msgid "The anchor can only be excluded at an end of the range" msgstr "" #: zerver/views/message_flags.py:169 -msgid "No such topic '{}'" -msgstr "沒有主題 '{}'" +#, python-brace-format +msgid "No such topic '{topic}'" +msgstr "" -#: zerver/views/message_send.py:201 +#: zerver/views/message_send.py:195 msgid "Missing sender" msgstr "缺少發送者" -#: zerver/views/message_send.py:208 +#: zerver/views/message_send.py:202 msgid "Mirroring not allowed with recipient user IDs" msgstr "Mirroring not allowed with recipient 使用者 IDs" -#: zerver/views/message_send.py:220 zerver/views/message_send.py:227 +#: zerver/views/message_send.py:214 zerver/views/message_send.py:221 msgid "Invalid mirrored message" msgstr "無效的鏡像訊息" -#: zerver/views/message_send.py:223 +#: zerver/views/message_send.py:217 msgid "Zephyr mirroring is not allowed in this organization" msgstr "" @@ -4854,27 +5069,28 @@ msgstr "" msgid "User is not muted" msgstr "" -#: zerver/views/presence.py:47 +#: zerver/views/presence.py:49 msgid "Presence is not supported for bot users." msgstr "機器人不支援 Presence。" -#: zerver/views/presence.py:52 +#: zerver/views/presence.py:54 #, python-brace-format msgid "No presence data for {user_id_or_email}" msgstr "" -#: zerver/views/presence.py:85 +#: zerver/views/presence.py:90 msgid "Client did not pass any new values." msgstr "" -#: zerver/views/presence.py:106 +#: zerver/views/presence.py:113 msgid "" "Client must pass emoji_name if they pass either emoji_code or reaction_type." msgstr "" -#: zerver/views/presence.py:144 -msgid "Invalid status: {}" -msgstr "無效的 status: {}" +#: zerver/views/presence.py:152 +#, python-brace-format +msgid "Invalid status: {status}" +msgstr "" #: zerver/views/push_notifications.py:19 msgid "Empty or invalid length token" @@ -4890,37 +5106,37 @@ msgid "" "emoji_code" msgstr "以下參數至少必須存在一個:emoji_name, emoji_code" -#: zerver/views/reactions.py:68 -msgid "Reaction doesn't exist." -msgstr "" - #: zerver/views/read_receipts.py:22 msgid "Read receipts are disabled in this organization." msgstr "" -#: zerver/views/realm.py:160 -msgid "Invalid language '{}'" -msgstr "無效的 language '{}'" +#: zerver/views/realm.py:183 +#, python-brace-format +msgid "Invalid language '{language}'" +msgstr "" -#: zerver/views/realm.py:165 +#: zerver/views/realm.py:188 msgid "At least one authentication method must be enabled." msgstr "" -#: zerver/views/realm.py:169 -msgid "Invalid video_chat_provider {}" -msgstr "無效的 video_chat_provider {}" - -#: zerver/views/realm.py:173 -msgid "Invalid giphy_rating {}" +#: zerver/views/realm.py:193 +#, python-brace-format +msgid "Invalid video_chat_provider {video_chat_provider}" msgstr "" -#: zerver/views/realm.py:336 +#: zerver/views/realm.py:201 +#, python-brace-format +msgid "Invalid giphy_rating {giphy_rating}" +msgstr "" + +#: zerver/views/realm.py:415 msgid "Must be a demo organization." msgstr "" #: zerver/views/realm_domains.py:36 -msgid "Invalid domain: {}" -msgstr "無效的域名:{}" +#, python-brace-format +msgid "Invalid domain: {error}" +msgstr "" #: zerver/views/realm_domains.py:39 #, python-brace-format @@ -4932,42 +5148,43 @@ msgstr "該域名 {domain} 已經是您組織的一部分。" msgid "No entry found for domain {domain}." msgstr "找不到域名 {domain} 的進入點。" -#: zerver/views/realm_emoji.py:38 +#: zerver/views/realm_emoji.py:40 msgid "You must upload exactly one file." msgstr "" -#: zerver/views/realm_emoji.py:40 +#: zerver/views/realm_emoji.py:42 msgid "Only administrators can override default emoji." msgstr "" -#: zerver/views/realm_emoji.py:46 zerver/views/realm_icon.py:27 -#: zerver/views/realm_logo.py:33 zerver/views/upload.py:275 -#: zerver/views/user_settings.py:352 -msgid "Uploaded file is larger than the allowed limit of {} MiB" +#: zerver/views/realm_emoji.py:48 zerver/views/realm_icon.py:27 +#: zerver/views/realm_logo.py:33 zerver/views/upload.py:278 +#: zerver/views/user_settings.py:391 +#, python-brace-format +msgid "Uploaded file is larger than the allowed limit of {max_size} MiB" msgstr "" -#: zerver/views/realm_export.py:45 +#: zerver/views/realm_export.py:44 msgid "Exceeded rate limit." msgstr "" -#: zerver/views/realm_export.py:66 +#: zerver/views/realm_export.py:65 #, python-brace-format msgid "Please request a manual export from {email}." msgstr "" -#: zerver/views/realm_export.py:104 +#: zerver/views/realm_export.py:103 msgid "Invalid data export ID" msgstr "無效的資料輸出 ID" -#: zerver/views/realm_export.py:110 +#: zerver/views/realm_export.py:107 msgid "Export already deleted" msgstr "" -#: zerver/views/realm_export.py:113 +#: zerver/views/realm_export.py:110 msgid "Export failed, nothing to delete" msgstr "" -#: zerver/views/realm_export.py:114 +#: zerver/views/realm_export.py:111 msgid "Export still in progress" msgstr "" @@ -4975,7 +5192,7 @@ msgstr "" msgid "You must upload exactly one icon." msgstr "您必須上傳至少一個圖示" -#: zerver/views/realm_linkifiers.py:50 zerver/views/realm_linkifiers.py:73 +#: zerver/views/realm_linkifiers.py:54 zerver/views/realm_linkifiers.py:77 msgid "Linkifier not found." msgstr "" @@ -4983,107 +5200,100 @@ msgstr "" msgid "You must upload exactly one logo." msgstr "您必須上傳至少一個標誌圖" -#: zerver/views/realm_playgrounds.py:33 +#: zerver/views/realm_playgrounds.py:32 msgid "Invalid playground" msgstr "" -#: zerver/views/scheduled_messages.py:64 +#: zerver/views/scheduled_messages.py:66 msgid "Recipient required when updating type of scheduled message." msgstr "" -#: zerver/views/scheduled_messages.py:69 +#: zerver/views/scheduled_messages.py:71 msgid "Topic required when updating scheduled message type to stream." msgstr "" -#: zerver/views/sentry.py:32 +#: zerver/views/sentry.py:29 msgid "Invalid request format" msgstr "" -#: zerver/views/sentry.py:35 +#: zerver/views/sentry.py:32 msgid "Invalid DSN" msgstr "" -#: zerver/views/streams.py:121 -#, python-brace-format -msgid "User not authorized to execute queries on behalf of '{principal}'" -msgstr "使用者未被授權進行查詢 on behalf of '{principal}'" - -#: zerver/views/streams.py:163 +#: zerver/views/streams.py:140 msgid "Private streams cannot be made default." msgstr "" -#: zerver/views/streams.py:195 +#: zerver/views/streams.py:172 msgid "You must pass \"new_description\" or \"new_group_name\"." msgstr "您必須傳 \"new_description\" 或 \"new_group_name\"." -#: zerver/views/streams.py:225 +#: zerver/views/streams.py:202 msgid "Invalid value for \"op\". Specify one of \"add\" or \"remove\"." msgstr "無效的 \"op\" 值。指定為 \"add\" 或 \"remove\"。" -#: zerver/views/streams.py:322 -msgid "Default streams cannot be made private." -msgstr "" - -#: zerver/views/streams.py:370 +#: zerver/views/streams.py:361 msgid "Stream already has that name!" msgstr "串流已經是該名稱!" -#: zerver/views/streams.py:452 zerver/views/user_groups.py:107 -#: zerver/views/user_groups.py:276 +#: zerver/views/streams.py:444 zerver/views/user_groups.py:177 +#: zerver/views/user_groups.py:374 msgid "Nothing to do. Specify at least one of \"add\" or \"delete\"." msgstr "" -#: zerver/views/streams.py:536 +#: zerver/views/streams.py:528 #, python-brace-format msgid "{user_full_name} subscribed you to the stream {stream_name}." msgstr "{user_full_name} 已為您訂閱串流 {stream_name}." -#: zerver/views/streams.py:542 +#: zerver/views/streams.py:534 #, python-brace-format msgid "{user_full_name} subscribed you to the following streams:" msgstr "{user_full_name} 已為您訂閱串流:" -#: zerver/views/streams.py:646 +#: zerver/views/streams.py:648 #, python-brace-format msgid "Unable to access stream ({stream_name})." msgstr "無法存取串流 ({stream_name})." -#: zerver/views/streams.py:659 +#: zerver/views/streams.py:661 msgid "You can only invite other Zephyr mirroring users to private streams." msgstr "你只能邀請 Zephyr mirroring 使用者至私人串流。" -#: zerver/views/streams.py:767 +#: zerver/views/streams.py:773 #, python-brace-format msgid "{user_name} created the following streams: {stream_str}." msgstr "{user_name} 已創建串流:{stream_str}." -#: zerver/views/streams.py:769 +#: zerver/views/streams.py:775 #, python-brace-format msgid "{user_name} created a new stream {stream_str}." msgstr "{user_name} 已創建一個新串流 {stream_str}." -#: zerver/views/streams.py:770 +#: zerver/views/streams.py:776 msgid "new streams" msgstr "新串流" -#: zerver/views/streams.py:802 +#: zerver/views/streams.py:808 #, python-brace-format msgid "**{policy}** stream created by {user_name}. **Description:**" msgstr "" -#: zerver/views/streams.py:1050 -msgid "Unknown subscription property: {}" -msgstr "未知的子敘述屬性:{}" +#: zerver/views/streams.py:1071 +#, python-brace-format +msgid "Unknown subscription property: {property}" +msgstr "" -#: zerver/views/streams.py:1054 -msgid "Not subscribed to stream id {}" -msgstr "未訂閱串流 id {}" +#: zerver/views/streams.py:1077 +#, python-brace-format +msgid "Not subscribed to stream id {stream_id}" +msgstr "" #: zerver/views/submessage.py:38 msgid "Invalid json for submessage" msgstr "無效的子訊息 json" -#: zerver/views/thumbnail.py:43 zerver/views/upload.py:182 +#: zerver/views/thumbnail.py:43 zerver/views/upload.py:185 msgid "

You are not authorized to view this file.

" msgstr "" @@ -5099,97 +5309,108 @@ msgstr "" msgid "User has disabled typing notifications for direct messages" msgstr "" -#: zerver/views/upload.py:180 -msgid "

File not found.

" -msgstr "

找不到檔案。

" +#: zerver/views/upload.py:183 +msgid "

This file does not exist or has been deleted.

" +msgstr "" -#: zerver/views/upload.py:220 +#: zerver/views/upload.py:223 msgid "Invalid token" msgstr "無效的 token" -#: zerver/views/upload.py:222 +#: zerver/views/upload.py:225 msgid "Invalid filename" msgstr "無效的 filename" -#: zerver/views/upload.py:265 +#: zerver/views/upload.py:268 msgid "You must specify a file to upload" msgstr "您上傳必須指定一個檔案" -#: zerver/views/upload.py:267 zerver/views/users.py:424 +#: zerver/views/upload.py:270 zerver/views/users.py:424 #: zerver/views/users.py:526 msgid "You may only upload one file at a time" msgstr "你單次只可以上傳一個檔案" -#: zerver/views/user_groups.py:73 +#: zerver/views/user_groups.py:113 msgid "No new data supplied" msgstr "" -#: zerver/views/user_groups.py:148 +#: zerver/views/user_groups.py:218 #, python-brace-format msgid "{user_full_name} added you to the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:153 +#: zerver/views/user_groups.py:223 #, python-brace-format msgid "{user_full_name} removed you from the group {group_name}." msgstr "" -#: zerver/views/user_groups.py:184 +#: zerver/views/user_groups.py:255 #, python-brace-format msgid "User {user_id} is already a member of this group" msgstr "使用者 {user_id} 已是此群組的成員" -#: zerver/views/user_groups.py:211 -msgid "There is no member '{}' in this user group" -msgstr "沒有成員 '{}' 在此使用者群組" +#: zerver/views/user_groups.py:284 +#, python-brace-format +msgid "There is no member '{user_id}' in this user group" +msgstr "" -#: zerver/views/user_groups.py:236 +#: zerver/views/user_groups.py:313 #, python-brace-format msgid "User group {group_id} is already a subgroup of this group." msgstr "" -#: zerver/views/user_groups.py:257 +#: zerver/views/user_groups.py:324 +#, python-brace-format +msgid "" +"User group {user_group_id} is already a subgroup of one of the passed " +"subgroups." +msgstr "" + +#: zerver/views/user_groups.py:352 #, python-brace-format msgid "User group {group_id} is not a subgroup of this group." msgstr "" -#: zerver/views/user_settings.py:61 +#: zerver/views/user_settings.py:63 msgid "Avatar changes are disabled in this organization." msgstr "" -#: zerver/views/user_settings.py:85 zerver/views/user_settings.py:293 +#: zerver/views/user_settings.py:87 zerver/views/user_settings.py:332 msgid "Email address changes are disabled in this organization." msgstr "此組織修改 Email 地址已禁用" -#: zerver/views/user_settings.py:126 +#: zerver/views/user_settings.py:142 msgid "Invalid default_language" msgstr "無效的 default_language" -#: zerver/views/user_settings.py:133 -msgid "Invalid notification sound '{}'" -msgstr "無效的通知音效 '{}'" - -#: zerver/views/user_settings.py:141 -msgid "Invalid email batching period: {} seconds" +#: zerver/views/user_settings.py:150 +#, python-brace-format +msgid "Invalid notification sound '{notification_sound}'" msgstr "" -#: zerver/views/user_settings.py:248 +#: zerver/views/user_settings.py:161 +#, python-brace-format +msgid "Invalid email batching period: {seconds} seconds" +msgstr "" + +#: zerver/views/user_settings.py:287 msgid "Your Zulip password is managed in LDAP" msgstr "" -#: zerver/views/user_settings.py:258 +#: zerver/views/user_settings.py:297 msgid "Wrong password!" msgstr "密碼錯誤!" -#: zerver/views/user_settings.py:263 -msgid "You're making too many attempts! Try again in {} seconds." +#: zerver/views/user_settings.py:302 +#, python-brace-format +msgid "You're making too many attempts! Try again in {seconds} seconds." msgstr "" -#: zerver/views/user_settings.py:269 +#: zerver/views/user_settings.py:308 msgid "New password is too weak!" msgstr "" -#: zerver/views/user_settings.py:342 +#: zerver/views/user_settings.py:381 msgid "You must upload exactly one avatar." msgstr "您上傳必須指定一個 avatar。" @@ -5236,6 +5457,10 @@ msgstr "無效的嵌入機器人名稱。" msgid "Username already in use" msgstr "使用者名稱已被使用" +#: zerver/views/users.py:686 +msgid "User not authorized to create users" +msgstr "" + #: zerver/views/users.py:701 #, python-brace-format msgid "Email '{email}' not allowed in this organization" @@ -5246,8 +5471,9 @@ msgid "Disposable email addresses are not allowed in this organization" msgstr "" #: zerver/views/users.py:712 -msgid "Email '{}' already in use" -msgstr "Email '{}' 已被使用" +#, python-brace-format +msgid "Email '{email}' already in use" +msgstr "" #: zerver/views/video_calls.py:47 msgid "Invalid Zoom access token" @@ -5265,27 +5491,27 @@ msgstr "無效的 Zoom session identifier" msgid "Invalid Zoom credentials" msgstr "無效的 Zoom credentials" -#: zerver/views/video_calls.py:160 +#: zerver/views/video_calls.py:177 msgid "Failed to create Zoom call" msgstr "新建 Zoom 通話失敗" -#: zerver/views/video_calls.py:207 +#: zerver/views/video_calls.py:224 msgid "BigBlueButton is not configured." msgstr "" -#: zerver/views/video_calls.py:212 +#: zerver/views/video_calls.py:229 msgid "Invalid signature." msgstr "" -#: zerver/views/video_calls.py:242 +#: zerver/views/video_calls.py:259 msgid "Error connecting to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:246 +#: zerver/views/video_calls.py:263 msgid "Error authenticating to the BigBlueButton server." msgstr "" -#: zerver/views/video_calls.py:249 +#: zerver/views/video_calls.py:266 msgid "BigBlueButton server returned an unexpected error." msgstr "" @@ -5305,28 +5531,28 @@ msgstr "無效的 Kerberos cache" msgid "We were unable to set up mirroring for you" msgstr "" -#: zerver/webhooks/circleci/view.py:76 +#: zerver/webhooks/circleci/view.py:83 msgid "Projects using this version control system provider aren't supported" msgstr "" -#: zerver/webhooks/freshstatus/view.py:98 -#: zerver/webhooks/uptimerobot/view.py:57 zerver/webhooks/zabbix/view.py:49 +#: zerver/webhooks/freshstatus/view.py:99 +#: zerver/webhooks/uptimerobot/view.py:58 zerver/webhooks/zabbix/view.py:50 msgid "Invalid payload" msgstr "無效的 payload" -#: zerver/webhooks/front/view.py:155 +#: zerver/webhooks/front/view.py:148 msgid "Unknown webhook request" msgstr "未知的 webhook 請求" -#: zerver/webhooks/ifttt/view.py:30 zerver/webhooks/zapier/view.py:39 +#: zerver/webhooks/ifttt/view.py:31 zerver/webhooks/zapier/view.py:40 msgid "Topic can't be empty" msgstr "主題不可為空" -#: zerver/webhooks/ifttt/view.py:33 zerver/webhooks/zapier/view.py:42 +#: zerver/webhooks/ifttt/view.py:34 zerver/webhooks/zapier/view.py:43 msgid "Content can't be empty" msgstr "內容不能為空" -#: zerver/webhooks/librato/view.py:174 +#: zerver/webhooks/librato/view.py:177 msgid "Malformed JSON input" msgstr "" @@ -5345,7 +5571,7 @@ msgid "" "[created|activated|acknowledged|closed]" msgstr "" -#: zerver/webhooks/papertrail/view.py:29 +#: zerver/webhooks/papertrail/view.py:31 msgid "Events key is missing from payload" msgstr "" @@ -5353,19 +5579,20 @@ msgstr "" msgid "Unable to handle Pivotal payload" msgstr "" -#: zerver/webhooks/slack/view.py:28 +#: zerver/webhooks/slack/view.py:30 msgid "Error: channels_map_to_topics parameter other than 0 or 1" msgstr "錯誤:channels_map_to_topics 參數必須是 0 或 1" -#: zerver/webhooks/slack/view.py:34 +#: zerver/webhooks/slack/view.py:36 msgid "Message from Slack" msgstr "來自 Slack 的訊息" -#: zerver/webhooks/wordpress/view.py:56 -msgid "Unknown WordPress webhook action: {}" -msgstr "未知的 WordPress webhook action: {}" +#: zerver/webhooks/wordpress/view.py:57 +#, python-brace-format +msgid "Unknown WordPress webhook action: {hook}" +msgstr "" -#: zerver/worker/queue_processors.py:1123 +#: zerver/worker/queue_processors.py:1116 #, python-brace-format msgid "" "Your data export is complete and has been uploaded here:\n" @@ -5382,47 +5609,53 @@ msgid "Must validate with valid Zulip server API key" msgstr "需驗證是否為可用的 Zulip server API" #. error -#: zilencer/views.py:62 zilencer/views.py:64 +#: zilencer/views.py:65 zilencer/views.py:67 msgid "Invalid UUID" msgstr "無效的 UUID" #. error -#: zilencer/views.py:69 +#: zilencer/views.py:72 msgid "Invalid token type" msgstr "無效的 token 類型" -#: zilencer/views.py:106 -msgid "{} is not a valid hostname" -msgstr "{} 不是有效的 hostname" +#: zilencer/views.py:109 +#, python-brace-format +msgid "{hostname} is not a valid hostname" +msgstr "" -#: zilencer/views.py:159 +#: zilencer/views.py:162 msgid "Missing user_id or user_uuid" msgstr "未填寫 user_id 或 user_uuid" -#: zilencer/views.py:370 -msgid "Invalid property {}" -msgstr "無效的屬性 {}" +#: zilencer/views.py:392 +#, python-brace-format +msgid "Invalid property {property}" +msgstr "" -#: zilencer/views.py:372 +#: zilencer/views.py:394 msgid "Data is out of order." msgstr "" -#: zilencer/views.py:395 +#: zilencer/views.py:417 msgid "Invalid data." msgstr "無效的資料。" -#: zproject/backends.py:521 +#: zilencer/views.py:515 +msgid "Malformed audit log data" +msgstr "" + +#: zproject/backends.py:520 msgid "You need to reset your password." msgstr "你需要重置密碼。" -#: zproject/backends.py:2203 +#: zproject/backends.py:2202 msgid "Missing id_token parameter" msgstr "缺少 id_token 參數" -#: zproject/backends.py:2904 +#: zproject/backends.py:2907 msgid "Invalid OTP" msgstr "無效的 OTP" -#: zproject/backends.py:2907 +#: zproject/backends.py:2910 msgid "Can't use both mobile_flow_otp and desktop_flow_otp together." msgstr "無法同時使用 mobile_flow_otp 和 desktop_flow_otp。" diff --git a/locale/zh_TW/translations.json b/locale/zh_TW/translations.json index 0803e70f12..9f66ea1145 100644 --- a/locale/zh_TW/translations.json +++ b/locale/zh_TW/translations.json @@ -5,6 +5,7 @@ "(hidden)": "(隱藏)", "(no description)": "(無敘述)", "(no topic)": "(無主題)", + "(or )": "", "(you)": "(您)", "({message_retention_days} days)": "({message_retention_days} 日)", "/dark (Switch to the dark theme)": "/dark (切換至深色主題)", @@ -35,7 +36,7 @@ "{name} is not subscribed to this stream. They will not be notified unless you subscribe them.": "", "{username} has {number_of_invites_by_user} unexpired invitations.": "", "Subscribe": "", - "Click here to learn about exporting private streams and messages.": "", + "Click here to learn about exporting private streams and direct messages.": "", "Upgrade for more space.": "", " to add a new line": "", " to send": "", @@ -82,15 +83,18 @@ "Add alert word": "新增警示詞", "Add all users": "", "Add another user...": "新增另一使用者...", + "Add audio call": "", "Add code playground": "", + "Add default streams": "", + "Add email": "", "Add emoji": "新增表情符號", "Add emoji reaction": "新增表情符號反應", "Add extra emoji for members of the {realm_name} organization.": "", "Add global time": "", "Add linkifier": "新增 linkifier", "Add members": "", + "Add members. Use usergroup or #streamname to bulk add members.": "", "Add member…": "新增成員...", - "Add new default stream": "新增個預設串流", "Add new user group": "", "Add one or more users": "新增使用者", "Add option": "", @@ -101,6 +105,7 @@ "Add subscribers. Use usergroup or #streamname to bulk add subscribers.": "", "Add task": "新增任務", "Add video call": "新增視訊通話", + "Add your email to invite other users or convert to a permanent Zulip organization.": "", "Added successfully!": "新增成功!", "Added successfully.": "", "Administrator": "管理者", @@ -124,6 +129,7 @@ "Alerted messages": "", "All": "全部", "All direct messages": "", + "All groups": "", "All messages": "全部訊息", "All messages including muted streams": "包含已靜音串流的所有訊息", "All streams": "所有串流", @@ -136,9 +142,11 @@ "Allow subdomains": "允許子域名", "Allowed domains": "已允許的域名", "Allowed domains: {domains}": "", + "Already members:": "", "Already not subscribed.": "", "Already subscribed to {stream}": "", "Already subscribed users:": "", + "Already subscribed.": "", "Always": "始終", "An API key can be used to programmatically access a Zulip account. Anyone with access to your API key has the ability to read your messages, send messages on your behalf, and otherwise impersonate you on Zulip, so you should guard your API key as carefully as you guard your password.
We recommend creating bots and using the bots' accounts and API keys to access the Zulip API, unless the task requires access to your account.": "", "An hour ago": "一個小時前", @@ -150,6 +158,7 @@ "Archive ?": "", "Archive stream": "", "Archiving stream will immediately unsubscribe everyone. This action cannot be undone.": "", + "Archiving this stream will also disable settings that were configured to use this stream:": "", "Are you sure you want to continue?": "", "Are you sure you want to create stream ''''{stream_name}'''' and subscribe {count} users to it?": "", "Are you sure you want to deactivate this organization?": "", @@ -162,6 +171,7 @@ "Are you sure you want to resend the invitation to ?": "", "Are you sure you want to revoke the invitation to {email}?": "", "Are you sure you want to revoke this invitation link created by {referred_by}?": "", + "Are you sure you want to revoke this invitation link?": "", "Are you sure you want to send @-mention notifications to the {subscriber_count} users subscribed to #{stream_name}? If not, please edit your message to remove the @{wildcard_mention} mention.": "", "Are you sure you want to unstar all messages in ? This action cannot be undone.": "", "Are you sure you want to unstar all starred messages? This action cannot be undone.": "", @@ -180,6 +190,7 @@ "Avatar changes are disabled in this organization": "", "Avatar from Gravatar": "", "Back to streams": "返回頻道", + "Because the original owner of this bot is deactivated, you will become the owner for this bot.": "", "Because you are the only organization owner, you cannot deactivate your account.": "", "Because you are the only subscriber, this stream will be automatically archived.": "", "Billing": "帳單", @@ -190,8 +201,11 @@ "Bot owner": "", "Bot type": "機器人類型", "Bots": "機器人", + "Browse 1 more stream": "", "Browse recent conversations": "", "Browse streams": "", + "Browse {can_subscribe_stream_count} more streams": "", + "Bulleted list": "", "Business": "商務選購", "Busy": "忙碌", "By deactivating your account, you will be logged out immediately.": "停用您的帳號,您將會立即被登出。", @@ -218,6 +232,8 @@ "Click here to reveal.": "", "Click on the pencil () icon to edit and reschedule a message.": "", "Click outside the input box to save. We'll automatically notify anyone that was added or removed.": "", + "Click to change notifications for this topic.": "", + "Click to view edit history.": "", "Click to view or download.": "", "Close": "關閉", "Close modal": "", @@ -232,7 +248,7 @@ "Commuting": "溝通中", "Compact": "", "Complete": "完成", - "Complete the organization profile to brand and explain the purpose of this Zulip organization.": "", + "Complete your organization profile, which is displayed on your organization's registration and login pages.": "", "Compose message": "", "Compose your message here": "在此編寫您的訊息", "Compose your message here...": "在此編寫您的訊息...", @@ -250,6 +266,7 @@ "Convert emoticons before sending (:) becomes 😃)": "發送前轉換表情符號(:) 變成 😃)", "Cookie Bot": "Cookie 機器人", "Copied!": "已複製!", + "Copy URL": "", "Copy address": "", "Copy and close": "複製並關閉", "Copy code": "", @@ -273,6 +290,7 @@ "Currently viewing all messages.": "", "Currently viewing the entire stream.": "", "Custom": "自定義", + "Custom URL": "", "Custom emoji": "自定義表情符號", "Custom language: {query}": "自定義語言: {query}", "Custom linkifier added!": "", @@ -302,10 +320,12 @@ "Deactivated": "已停用", "Deactivated users": "停用使用者", "December": "十二月", + "Default": "", "Default for stream": "", "Default is {language}. Use 'text' to disable highlighting.": "", "Default language for code blocks": "", "Default streams": "預設頻道", + "Default streams for new users cannot be made private.": "", "Default streams for this organization": "", "Default user settings": "預設使用者設定", "Default view": "", @@ -314,12 +334,14 @@ "Delete": "刪除", "Delete alert word": "刪除警示詞", "Delete all drafts": "", + "Delete all selected drafts": "", "Delete code playground?": "", "Delete custom profile field?": "", "Delete data export?": "", "Delete draft": "刪除草稿", "Delete file": "刪除檔案", "Delete file?": "", + "Delete group": "", "Delete icon": "刪除圖示", "Delete linkifier?": "", "Delete logo": "刪除標誌圖", @@ -341,6 +363,7 @@ "Depending on the size of your organization, an export can take anywhere from seconds to an hour.": "", "Deprecation notice": "棄用通知", "Description": "敘述", + "Deselect draft": "", "Desktop": "桌面", "Desktop & mobile apps": "桌面 & 行動應用", "Desktop message notifications": "", @@ -348,10 +371,12 @@ "Detailed message formatting documentation": "詳細的訊息格式化文件", "Detailed search filters documentation": "", "Direct message": "", + "Direct message to me": "", "Direct messages": "", "Direct messages and mentions": "", "Direct messages are disabled in this organization.": "", "Direct messages disabled": "", + "Disable": "", "Disable notifications?": "", "Disabled": "已禁用", "Discard": "棄用", @@ -360,9 +385,9 @@ "Display my availability to other users": "", "Display names of reacting users when few users have reacted to a message": "", "Display on user card": "", - "Display settings": "顯示設定", "Do you still want to move the latest {total_messages_allowed_to_move, plural, one {message} other {# messages}}?": "", "Do you want to add everyone?": "", + "Do you want to mark them all as read?": "", "Domain": "域名", "Don’t allow disposable email addresses": "禁止一次性 email", "Download": "下載", @@ -388,7 +413,7 @@ "Edit custom profile field": "", "Edit linkfiers": "", "Edit message": "編輯訊息", - "Edit or reschedule message": "", + "Edit profile": "", "Edit selected draft": "編輯已選定的草稿", "Edit selected message or view source": "", "Edit status": "編輯狀態", @@ -398,7 +423,6 @@ "Edit your last message": "編輯您最後一則訊息", "Edit your profile": "編輯您的 profile", "Edit {group_name}": "", - "Edited ({last_edit_timestr})": "已編輯 ({last_edit_timestr})", "Edited by {full_name}": "{full_name} 已編輯", "Education (for-profit)": "", "Education (non-profit)": "", @@ -461,6 +485,7 @@ "External account type": "外部帳號類型", "External link": "外部連結", "Failed": "失敗", + "Failed adding one or more streams.": "", "Failed to create video call.": "新建視訊通話失敗。", "Failed to generate preview": "生成預覽失敗", "Failed to upload %'{file}'": "", @@ -485,11 +510,9 @@ "Filter exports": "篩選 exports", "Filter groups": "", "Filter invites": "篩選邀請", - "Filter languages": "篩選語言", "Filter linkifiers": "篩選 linkifiers", "Filter members": "", "Filter muted users": "", - "Filter roles": "", "Filter streams": "篩選串流", "Filter subscribers": "", "Filter topics": "篩選主題", @@ -500,6 +523,9 @@ "First message": "第一則訊息", "First time? Read our guidelines for creating and naming streams.": "", "First time? Read our guidelines for creating user groups.": "", + "Follow": "", + "Followed": "", + "Followed topics": "", "For example, to configure a code playground for code blocks tagged as Python, you can set:": "", "For more examples and technical details, see the help center documentation on adding code playgrounds.": "", "For more examples, see the help center documentation on adding linkifiers.": "", @@ -510,6 +536,7 @@ "GIPHY attribution": "", "GIPHY integration": "GIPHY 整合", "General": "一般", + "Generate URL for an integration": "", "Generate email address": "", "Generate invite link": "生成邀請連結", "Generate new API key": "生成新 API key", @@ -542,14 +569,18 @@ "High contrast mode": "", "Hint": "", "Hint (up to 80 characters)": "", + "How would you like to invite users?": "", + "However, it will no longer be subscribed to the private streams that you are not subscribed to.": "", "Humans": "人", "Idle": "閒置", "If you don't know your password, you can reset it.": "", + "If you haven't updated your name, it's a good idea to do so before inviting other users to join you!": "", "Ignored deactivated users:": "", "Image": "圖", "In a meeting": "在會議中", "Inactive": "", "Inactive bots": "不活躍的機器人", + "Inbox": "", "Include DMs": "", "Include content of direct messages in desktop notifications": "", "Include message content in message notification emails": "", @@ -558,6 +589,8 @@ "Incoming webhooks can only send messages.": "Incoming webhooks 只可以發送訊息。", "Initiate a search": "起始一個搜尋", "Insert new line": "插入新的一行", + "Integration": "", + "Integration URL will appear here.": "", "Integrations": "整合", "Interface": "介面", "Invalid URL": "無效URL", @@ -581,6 +614,8 @@ "Inviting...": "邀請中...", "Italic": "斜體", "January": "一月", + "Jitsi server URL": "", + "Join audio call.": "", "Join video call.": "", "Join {realm_name}": "", "Joined": "已加入", @@ -599,8 +634,10 @@ "Last 30 days": "最近 30 天", "Last 6 months": "最近 6 個月", "Last active": "最後活躍", + "Last edited {last_edit_timestr}": "", "Last message": "最後訊息", "Last modified": "最後修改", + "Last moved {last_edit_timestr}": "", "Learn more": "", "Learn more about mentions here.": "", "Learn more about starring messages here.": "", @@ -623,6 +660,7 @@ "Log out": "登出", "Looking for our integrations or API documentation?": "", "MOVED": "", + "Main menu": "", "Manage bot": "", "Manage streams": "管理頻道", "Manage this bot": "", @@ -646,7 +684,6 @@ "Mention a time-zone-aware time": "", "Mentioned in": "提到於", "Mentions": "提到", - "Menu": "選單", "Menus": "選單", "Message #{stream_name}": "", "Message #{stream_name} > {topic_name}": "", @@ -662,6 +699,8 @@ "Message {recipient_names}": "", "Message {recipient_name} ({recipient_status})": "", "Messages in all public streams": "", + "Messages sent by you": "", + "Messages sent by {sender}": "", "Messages will not be automatically marked as read because this is not a conversation view. Change setting": "", "Messages will not be automatically marked as read. Change setting": "", "Mobile": "行動裝置", @@ -681,11 +720,11 @@ "Move some messages?": "", "Move this and all following messages in this topic": "", "Move topic": "移動主題", - "Moved ({last_edit_timestr})": "", "Moved by {full_name}": "", "Moving messages": "", "Must be invited by a subscriber; new subscribers can only see messages sent after they join; hidden from non-administrator users": "", "Must be invited by a subscriber; new subscribers can view complete message history; hidden from non-administrator users": "", + "Mute": "", "Mute stream": "靜音串流", "Mute this user": "", "Mute topic": "靜音主題", @@ -734,38 +773,42 @@ "New password is too weak": "新密碼太弱", "New stream announcements": "", "New stream message": "新串流訊息", + "New stream notifications": "", "New task": "新任務", "New topic": "新主題", "New user announcements": "", + "New user notifications": "", "Next message": "下一則訊息", "Next unread direct message": "", "Next unread topic": "下一個未讀主題", - "Next week": "次週", "No bots match your current filter.": "無機器人符合您現有的篩選。", + "No conversations match your filters.": "", "No custom emoji.": "無自定義表情符號。", + "No custom profile field configured for this organization.": "", "No default streams match you current filter.": "無預設串流符合您的現有的篩選。", "No description.": "無敘述。", + "No drafts selected": "", "No drafts.": "無草稿。", "No exports.": "無輸出。", "No invites match your current filter.": "無邀請符合您現有的篩選。", "No language set": "無語言設定", "No linkifiers set.": "無 linkifiers 設定。", + "No matching results": "", "No matching users.": "", "No one has read this message yet.": "", "No owner": "無所有者", "No playgrounds configured.": "", "No restrictions": "無限制", "No scheduled messages.": "", - "No search results": "無搜尋結果", "No search results.": "", "No stream subscriptions.": "", "No streams": "", "No topics are marked as resolved.": "", - "No topics match your current filter.": "無主題符合您現有的篩選。", "No user group subscriptions.": "", "No user groups": "", "No user to subscribe.": "無使用者訂閱。", "No users match your current filter.": "無使用者符合您現有的篩選。", + "No users to add.": "", "No, I'll catch up.": "", "Nobody": "沒有人", "Nobody in this Zulip organization will be able to see this email address.": "", @@ -784,6 +827,7 @@ "Notify stream": "", "Notify this user by email?": "", "November": "十一月", + "Numbered list": "", "October": "十月", "Old password": "舊密碼", "Once you leave this group, you will not be able to rejoin.": "", @@ -800,6 +844,7 @@ "Only owners can change these settings.": "", "Only stream members can add users to a private stream": "只有該串流成員可以新增使用者至該串流", "Only stream members can add users to a private stream.": "", + "Only subscribers can access or join private streams, so you will lose access to this stream if you convert it to a private stream while not subscribed to it.": "", "Only subscribers to this stream can edit stream permissions.": "", "Open": "打開", "Open message menu": "打開訊息選單", @@ -859,6 +904,7 @@ "Please specify at least one valid recipient.": "", "Political group": "", "Posted by {full_name}": "", + "Preferences": "", "Press > for list of topics": "按下 > 觀看主題清單", "Prevent users from changing their avatar": "防止使用者修改他們的頭像", "Prevent users from changing their email address": "防止使用者修改他們的 email 地址", @@ -869,6 +915,7 @@ "Previous message": "之前的訊息", "Privacy": "", "Privacy settings": "隱私設定", + "Private streams cannot be default streams for new users.": "", "Private, protected history": "", "Private, shared history": "", "Profile": "", @@ -883,6 +930,7 @@ "Reactivate bot": "重新啟用機器人", "Reactivate this bot": "", "Reactivate this user": "", + "Reactivate user": "", "Reactivate {name}": "", "Read receipts": "", "Read receipts are currently disabled in this organization.": "", @@ -930,6 +978,7 @@ "Saved as draft": "存成草稿", "Saved. Please reload for the change to take effect.": "", "Saving": "儲存中", + "Schedule for {deliver_at}": "", "Schedule for {formatted_send_later_time}": "", "Schedule message": "", "Scheduled messages": "", @@ -948,10 +997,15 @@ "See how to configure email.": "E-mail設定展示", "Select a stream": "", "Select a stream below or change topic name.": "", - "Select date and time": "選擇日期和時間", + "Select a stream to subscribe": "", + "Select all drafts": "", + "Select draft": "", "Select emoji": "", "Select language": "", + "Select stream": "", "Send": "發送", + "Send all notifications to a single topic": "", + "Send an email": "", "Send automated notice to new topic": "", "Send automated notice to old topic": "", "Send digest emails when I'm away": "當我是離開狀態,發送摘要 emails", @@ -988,6 +1042,7 @@ "Show previews of uploaded and linked images": "顯示上傳跟圖連結的預覽", "Show starred message count": "顯示已標星的訊息數", "Show status text": "", + "Show unread counts for": "", "Show/change your API key": "顯示/修改 您的 API key", "Sign up": "註冊", "Silent mentions do not trigger notifications.": "", @@ -999,6 +1054,7 @@ "Sort by estimated weekly traffic": "依週估計流量排序", "Sort by name": "依名稱排序", "Sort by number of subscribers": "依訂閱數排序", + "Sort by unread message count": "", "Spoiler": "", "Star": "標星", "Star selected message": "標星已選擇的訊息", @@ -1024,8 +1080,10 @@ "Subscribe": "訂閱", "Subscribe them": "", "Subscribe to/unsubscribe from selected stream": "訂閱 /退訂 已選定的頻道", + "Subscribe {full_name} to streams": "", "Subscribed": "已訂閱", "Subscribed streams": "", + "Subscribed successfully!": "訂閱成功!", "Subscriber count": "訂閱數", "Subscribers": "訂閱者", "Successfully subscribed user:": "", @@ -1052,6 +1110,7 @@ "There are no current alert words.": "", "There are no messages here.": "", "There are no streams you can view in this organization.": "", + "There are no unread messages in your inbox.": "", "There is a default emoji with this name. Do you want to override it with a custom emoji? The name :{emoji_name}: will no longer work to access the default emoji.": "", "They administer the following bots:": "", "This Zulip server is running an old version and should be upgraded.": "", @@ -1064,7 +1123,7 @@ "This is not a publicly accessible conversation.": "", "This is what a Zulip notification looks like.": "這就是 Zulip 通知長得樣子。", "This message could not be sent at the scheduled time.": "", - "This message is no longer scheduled for {deliver_at}.": "", + "This message is no longer scheduled to be sent.": "", "This message was hidden because you have muted the sender.": "", "This organization is configured so that administrators and moderators can add custom emoji.": "", "This organization is configured so that administrators and moderators can modify user groups.": "", @@ -1103,7 +1162,6 @@ "Time zone": "時區", "Time's up!": "時間到!", "Tip: You can also send \"/poll Some question\"": "提示:您可以發送 \"/poll 問題名稱\"", - "To add syntax highlighting to a multi-line code block, add the language's first Pygments short name after the first set of back-ticks. You can also make a code block by indenting each line with 4 spaces.": "", "To invite users, please increase the number of licenses or deactivate inactive users.": "", "To preserve your reading state, this view does not mark messages as read.": "", "Today": "今天", @@ -1112,7 +1170,6 @@ "Toggle subscription": "切換訂閱", "Toggle the gear menu": "切換 gear 選單", "Toggle topic mute": "切換主題靜音", - "Tomorrow": "明天", "Tomorrow at {time}": "", "Topic": "主題", "Topic muted": "主題已靜音", @@ -1124,8 +1181,9 @@ "Turn off invisible mode": "", "Two factor authentication": "二次身份驗證", "Type": "類型", + "URL": "", + "URL for your integration": "", "URL pattern": "URL 樣式", - "URL prefix": "", "URL template": "", "USERS": "使用者", "Uncheck all": "取消全部勾選", @@ -1139,6 +1197,7 @@ "Unmute this user": "", "Unmute topic": "取消主題靜音", "Unmuted": "", + "Unmuted streams and topics": "", "Unpin stream from top": "取消釘住上方的串流", "Unread": "未讀", "Unread count badge (appears in desktop sidebar and browser tab)": "", @@ -1199,7 +1258,7 @@ "View all streams": "", "View direct messages": "", "View drafts": "觀看草稿", - "View edit history": "觀看編輯歷史", + "View edit and move history": "", "View file": "預覽檔案", "View in playground": "", "View in {name}": "", @@ -1227,9 +1286,10 @@ "Web-public": "", "Wednesday": "週三", "Week of {date}": "一週中的 {date}", - "Welcome back! You have {unread_msgs_count} unread messages. Do you want to mark them all as read?": "", + "Welcome back!": "", "What pronouns should people use to refer to you?": "", "When you deactivate , they will be immediately logged out.": "", + "Where to send notifications": "", "Whether wildcard mentions like @all are treated as mentions for the purpose of notifications.": "像是 @all 這種通配符,目的就是用來廣發通知的。", "Which parts of the email should be included in the Zulip message sent to this stream?": "", "Who can access the stream?": "誰可存取該串流?", @@ -1241,12 +1301,13 @@ "Who can create and manage user groups": "誰可創建跟管理使用者群組", "Who can create private streams": "", "Who can create public streams": "", + "Who can create reusable invitation links": "", "Who can create web-public streams": "", "Who can delete their own messages": "", - "Who can invite users to this organization": "", "Who can move messages to another stream": "", "Who can move messages to another topic": "", "Who can post to the stream?": "誰可在此串流發表?", + "Who can send email invitations to new users": "", "Who can unsubscribe others from this stream?": "", "Who can use @all/@everyone mentions in large streams": "", "Who can use direct messages": "", @@ -1268,14 +1329,17 @@ "You and": "您和", "You and {display_reply_to}": "", "You and {recipients}": "", - "You are about to disable all notifications for private messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", + "You are about to disable all notifications for direct messages, @‑mentions and alerts, which may cause you to miss messages that require your timely attention. If you would like to temporarily disable all desktop notifications, consider turning on \"Do not disturb\" instead.": "", "You are not allowed to send direct messages in this organization.": "", "You are not currently subscribed to this stream.": "您現在並沒訂閱此串流。", "You are not subscribed to any streams.": "", "You are not subscribed to stream ": "", "You are sending a message to a resolved topic. You can send as-is or unresolve the topic first.": "", "You are using an old version of the Zulip desktop app with known security bugs.": "", + "You are viewing all the bots in this organization.": "", "You aren't subscribed to this stream and nobody has talked about that yet!": "有人知道你還沒訂閱此頻道嗎?", + "You can add a new bot or manage your own bots.": "", + "You can manage your own bots.": "", "You can also make tables with this Markdown-ish table syntax.": "", "You can combine search filters as needed.": "", "You can fully access this community and participate in conversations by creating a Zulip account in this organization.": "", @@ -1296,9 +1360,16 @@ "You do not have permission to unresolve topics with messages older than {N, plural, one {# hour} other {# hours}} in this organization.": "", "You do not have permission to unresolve topics with messages older than {N, plural, one {# minute} other {# minutes}} in this organization.": "", "You do not have permission to use wildcard mentions in this stream.": "您沒有權限在這個使用", + "You do not have permissions to generate invite links in this organization.": "", + "You do not have permissions to send email invitations in this organization.": "", "You don't have any direct message conversations yet.": "", + "You follow this topic": "", "You get": "您取得", + "You have at least {unread_msgs_count} unread messages.": "", + "You have {unread_msgs_count} unread messages.": "", + "You have mentions": "", "You have muted .": "", + "You have muted this topic": "", "You have no active bots.": "您沒有活躍的機器人", "You have no direct messages including {person} yet.": "", "You have no direct messages with these users yet.": "", @@ -1311,18 +1382,23 @@ "You have not muted any users yet.": "", "You have not sent any direct messages to yourself yet!": "", "You have not uploaded any files.": "您從未上傳過檔案。", + "You have unmuted this topic": "", "You haven't been mentioned yet!": "您尚未被提及!", "You haven't received any messages sent by {person} yet.": "", + "You must configure your email to access this feature.": "", "You must be an organization administrator to create a stream without subscribing.": "您必須是組織管理者才能新建不需訂閱的串流。", + "You must configure your email to access this feature.": "", "You need to be running Zephyr mirroring in order to send messages!": "您需要依序執行 Zephyr mirroring 以發送訊息!", "You searched for:": "您搜索了:", "You subscribed to stream ": "", "You type": "您輸入", "You unsubscribed from stream ": "", + "You will get default notifications for this topic": "", "You will not receive notifications about new messages.": "", "You're not subscribed to this stream. You will not be notified if other users reply to your message.": "您沒有訂閱此串流。如果其他使用者回復了您的訊息,您不會被通知。", "Your API key:": "您的 API key:", "Your Zulip account on has been deactivated, and you will no longer be able to log in.": "", + "Your groups": "", "Your message has been scheduled for {deliver_at}.": "", "Your message is taking longer than expected to be sent. Sending…": "", "Your message was sent to a stream you have muted.": "", @@ -1336,15 +1412,13 @@ "Zulip Server {display_version}": "", "Zulip Server {display_version} (modified)": "", "Zulip Server {display_version} (patched)": "", + "Zulip lets you configure notifications for each topic. You can also automatically follow or unmute topics you start or participate in.": "", "Zulip lets you mute topics and streams to avoid receiving notifications messages you are not interested in. Muting a stream effectively mutes all topics in that stream. You can also manually mute a topic in an unmuted stream, or unmute a topic in a muted stream. Learn more.": "", "Zulip needs to send email to confirm users' addresses and send notifications.": "Zulip 需要發送 email 以確認使用者的地址跟發送通知。", "Zulip needs your permission to enable desktop notifications.": "", "Zulip's translations are contributed by our amazing community of volunteer translators. If you'd like to help, see the Zulip translation guidelines.": "", "[Configure]": "[設定]", - "[Disable]": "[禁用]", - "[More…]": "[更多…]", "[Quoting…]": "", - "[Unset]": "[重置]", "and {remaining_senders, plural, one {1 other} other {# others}}.": "", "back to streams": "", "beta": "", @@ -1357,15 +1431,11 @@ "does not apply to moderators and administrators": "", "group direct messages with {recipient}": "", "he/him": "", - "in 1 hour": "1 小時內", - "in 20 minutes": "20 分鐘內", - "in 3 hours": "3 小時內", "invisible mode off": "", "leafy green vegetable": "綠葉蔬菜", "marketing": "市場", "more conversations": "", "more topics": "更多主題", - "or": "或", "she/her": "", "they/them": "", "{N, plural, one {Done! {N} message marked as read.} other {Done! {N} messages marked as read.}}": "{N, plural, other {}}", @@ -1377,13 +1447,13 @@ "{days_old} days ago": "{days_old} 天前", "{full_name} is typing…": "{full_name} 正在輸入…", "{hours} hours ago": "{hours} 小時前", - "{items_selected} selected": "", "{messages_not_allowed_to_move, plural, one {# message} other {# messages}} will remain in the current topic.": "{messages_not_allowed_to_move, plural, other {}} will remain in the current topic.", "{minutes} min to edit": "", "{minutes} minutes ago": "{minutes} 分鐘前", "{modal_heading_text}": "", "{num_of_people, plural, one {This message has been read by {num_of_people} person:} other {This message has been read by {num_of_people} people:}}": "{num_of_people, plural, other {}}", "{seconds} sec to edit": "", + "{server_jitsi_server_url} (default)": "", "{user_time} local time": "", "{username} [said]({link_to_message}):": "", "{username} reacted with {emoji_name}": ""